Jump to content


Photo

Limpiado de memoria automático


  • Please log in to reply
3 replies to this topic

#1 jorgeu

jorgeu

    Advanced Member

  • Miembro Platino
  • PipPipPip
  • 179 posts
  • LocationMaracaibo

Posted 06 February 2012 - 06:16 AM

Hola,

Estuve curioseando sobre el manejo de memoria y si había alguna manera de evitar tener que llamar explícitamente la función que libera la memoria.

Ejemplo miren acá http://delphi.about..../memoryleak.htm

Ahí recomiendan liberar la memoria en un bloque "Finally".

En Java y .NET se dispone de un garbage collector que automáticamente lleva el conteo de referencias. Eso es muy cómodo pero también tiene sus problemas de rendimiento.

En C++ la gente usa smart pointers que son evoltorios alrededor de los apuntadores y permiten que se libere la memoria de manera automática.

¿Alguna opción de estas para Free Pascal / Delphi ?

Saludos
  • 0

#2 Rolphy Reyes

Rolphy Reyes

    Advanced Member

  • Moderadores
  • PipPipPip
  • 2092 posts
  • LocationRepública Dominicana

Posted 06 February 2012 - 08:33 AM

Saludos.

No entendí correctamente la pregunta.  Tú pregunta es ¿Acerca de la liberación de objetos? ó ¿Liberar la memoria no usada por la aplicación?
  • 0

#3 jorgeu

jorgeu

    Advanced Member

  • Miembro Platino
  • PipPipPip
  • 179 posts
  • LocationMaracaibo

Posted 06 February 2012 - 08:51 AM

Saludos.

No entendí correctamente la pregunta.  Tú pregunta es ¿Acerca de la liberación de objetos? ó ¿Liberar la memoria no usada por la aplicación?


Ambas cosas. Menciono en el post el GC de Java/.NET y los smart pointers de C++. Si tampoco sabes qué es eso date un paseo por google. Te prometo será interesante lectura.
  • 0

#4 Rolphy Reyes

Rolphy Reyes

    Advanced Member

  • Moderadores
  • PipPipPip
  • 2092 posts
  • LocationRepública Dominicana

Posted 06 February 2012 - 03:39 PM

Saludos.

De momento utilizo este código, observa el comentario de Roy Nelson.

En cuanto a liberar objetos, yo lo hago manual si así se puede decir... ;)
  • 0




IP.Board spam blocked by CleanTalk.