Memory Leak >> como encontrar y arreglar una fuga de memoria virtual

como encontrar y arreglar una fuga de memoria virtual

Las pérdidas de memoria son el agujero negro de la programación, que
continuamente tragar recursos que nunca se dará a conocer
otra vez. Ellos pueden ser una pesadilla para un programador: que
son difíciles de encontrar, y las excepciones o errores sólo aparecen
después de mucho tiempo y por lo general no en el lugar de la
pérdida de sí mismo.

Contrario a Microsoft Dot Net, Delphi , VCL esta
sin recolector de basura. Tienes que cuidar de la liberación
de cada uno de sí mismo objeto. Por ejemplo, es fácil pasar por alto
un objeto en una lista que no se destruye si la lista es liberada.

Los posibles mensajes de error debido a las pérdidas de recursos y la memoria
son, por ejemplo "La ventana no tiene barras de desplazamiento"
(Microsoft Código de error 1447) y "Fuera de los recursos del sistema".


 
¿Qué puede hacer si usted sabe que hay un fuga de memoria, memory leak?



1. Controlar el uso de la memoria con el administrador de tareas

2. Utilice herramientas como el programa gratuito "MemP, Debug tool de MS http://www.microsoft.com/downloads/en/details.aspx?familyid=28bd5941-c458-46f1-b24d-f60151d875a3&displaylang=en

3. Revise su programa las funciones y objetos que
    tienen una influencia directa sobre la memoria: GetMem, FreeMem,
    Constructores, destructores (especialmente de los compuestos y la lista
    objetos), MapViewOfFile, etc

4. Controlar el uso de la memoria con las funciones de la API
    GlobalMemoryStatus () y GetProcessMemoryInfo ().
    Utilice, por ejemplo, un símbolo de depuración se define con
    {$ DEFINE DEBUG}.







Search Keys:
delphi delphi3000 article borland vcl code-snippet Memory, Leak, Resources, GlobalMemoryStatus, GetProcessMemoryInfo, Debug

0 pensamientos:

Post a Comment

feedback!