![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
#3
|
||||
|
||||
|
En realidad ambos son iguales en cuanto a la liberación de memoria, ya que la instrucción que realmente libera la memoria es el FREE. La asignación a nil, simplemente asigna ese valor a la variable que apunta al form, pero en ese momento la memoria ya se ha liberado(*).
(*)Recuerda, que el sistema no libera la memoria inmediatamente, así que si miras la memoria que consume tu programa, tal vez después de hacer el FREE, la cantidad de memoria libre siga siendo la misma que antes de hacerlo; Es normal, pues lo que hace el sistema es "marcar" determinada memoria, como que está "libre", pero no la libera en ese momento de forma explícita. Queda marcada y en el momento que el sistema la necesita "recopila" esas zonas "marcadas para liberar" y las "libera" todas al mismo tiempo. Tal como comenta [olbeup], puedes usar un FreeAndNil, que lo que hace es hacer el FREE y la asignación en una misma instrucción(línea). La asignación a NIL, aunque no es obligatoria, si es recomendable si posteriormente utilizas instrucciones como esta:
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi ![]() P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Liberar el DataModule | Cañones | OOP | 5 | 13-10-2010 12:40:17 |
| Liberar DLL | acertij022 | Varios | 1 | 26-06-2008 16:38:05 |
| TSHFileInfo, se ha de liberar? | [Gunman] | API de Windows | 4 | 28-11-2005 21:14:36 |
| Liberar Objetos II | OscarG | OOP | 12 | 11-10-2005 10:13:55 |
| Liberar un objeto | xerkan | Servers | 1 | 28-10-2003 17:29:10 |
|