![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
![]() Cuando cierro un programa, la memoria se libera automaticamente? y si es que no, como la libero?.
|
#2
|
||||
|
||||
Hola,
¿Puedes concretar un poco más? |
#3
|
|||
|
|||
Mmmmmmmm, bueon, cuando se carga un programa este se guarda en la memoria y quisiera saber si al cerrar un programa (que esta demas decir que es un programa creado en delphi) el espacio que ocupaba en memoria se libera o sigue hay "desperdiciandose".
Entonces en caso de que al cerrar el programa la memoria no se libera, como la libero yo, al programar en delphi que codigo meto al decirle al programa que se cierre o termine. Espero haber sido claro (ojala). |
#4
|
||||
|
||||
Hola,
¿Pero tú tienes algún problema cuando se cierra el programa? ¿Notas algo o qué? |
#5
|
|||
|
|||
Bueno el programa al cerrar se demora un poco en hacerlo.
|
#6
|
||||
|
||||
Cita:
Era eso??? ![]() |
#7
|
|||
|
|||
Exacto, esa es justamente mi duda...
![]() |
#8
|
||||
|
||||
Si y no...
La respuesta es SI y NO.
En teoría, y en general en la práctica, al cerrar la aplicación se libera la porción de memoria asignada. Pero... (siempre hay peros) si haces empleos de punteros, debes liberar lo que haz pedido; es decir que por cada New() que hayas realizado, un Dispose() debe ser ejecutado. Ahora bien, para mayor seguridad existe la sentencia CaFree. Que puede ejecutarse cuando se cierra el formulario. En el evento on Close() debes realizar esto:
Dicha sentencia permite (y se asegura) de que toda la memoria usada sea liberada (exceptuando los punteros). Espero que te sirva de ayuda. Última edición por Delphius fecha: 07-05-2006 a las 06:06:14. Razón: Corrección etiquetas y de aclaciones |
#9
|
|||
|
|||
Hola, yo solucione un problema similar, donde se demoraba en cerrar, simplemente quitandole prioridad a la aplicacion al cerrarla. Me ayudo bastante, ya q, cierra al toque la ventana y queda cerrandose pero no se ve, recupero el escritorio y puedo ir a otras ventanas mientras. Saludos y espero les sirva.
|
#10
|
||||
|
||||
Prueba con esto, puedes hacerlo tantas veces como quieras, mira la memoria es el administrador de tareas
A ver si te ayuda |
#11
|
|||
|
|||
liberar buffer
como seria para android XE5
|
#12
|
||||
|
||||
Para android, en principio, no necesitas hacerlo, se supone que lo hace automáticamente cuando le hace falta más memoria o recursos.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#13
|
||||
|
||||
En android se emplea ARC (automatic reference counting) que es similar a como trabajan los record, string e interfaces en Delphi. Básicamente el sistema lleva la cuenta de la cantidad de referencias incrementando o decrementado cuando sea necesario. Cuando la cantidad de referencias llega a 0, se libera la memoria.
Si te fijas la implementación de los destructores, cuando el sistema es ARC, el método Destroy no hace nada |
#14
|
||||
|
||||
![]() revivo el tema
![]() con 2 preguntas como puedo acelerar la carga del programa en delphi tengo mi pc win10 con 8Gb memoria ,la aplicación comienza a cargar los combobox label etc uno por uno lo hace en 3 segundos, pero es notorio a la vista lo que carga lento? y mi segunda pregunta es como libero memoria hasta windows 7 estos códigos funcionan de primera, ahora estoy trabajando en windows10 y veo que no libera memoria ni el uso del procesador con con los 3 ejemplos q menciona en el post:
__________________
Gracias por su coloración club delphi darkbits ;) |
#15
|
||||
|
||||
Me imagino que la aplicacion hara algo mas a parte de mostrar ComboBoxes y Labels como para que demore en cargar en semejante maquinon, no?
|
#16
|
||||
|
||||
Los "hacks" que están de ejemplo en este post *son innecesarios*. Y hasta idiotas. Pa' que carajos estan jodiendo el area de memoria de la app? Y la prioridad de los hilos en un cerrar de formulario???? (plop!!!!!).
https://msdn.microsoft.com/en-us/lib...(v=vs.85).aspx Cita:
Una app al cerrarse libera su memoria. Eso es OBVIO. AUN SI NO SE LIBERA LA MEMORIA MANUALMENTE! De no ser así, habría que despedir a los programadores de ese OS*. https://stackoverflow.com/questions/...atically-freed Cita:
--- Cita:
__________________
El malabarista. Última edición por mamcx fecha: 06-04-2017 a las 04:11:28. |
![]() |
|
|
![]() |
||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Liberar dll de memoria | lgarcia | Internet | 1 | 11-08-2005 00:26:29 |
Liberar memoria | Sick boy | Varios | 6 | 02-07-2005 10:11:29 |
Liberar Memoria | JoseQ | Varios | 6 | 16-07-2004 18:49:21 |
Liberar memoria del HDC | joecool | Gráficos | 2 | 17-05-2003 00:28:51 |
Liberar Memoria | JODELSA | Varios | 4 | 13-05-2003 17:39:05 |
![]() |
|