Tecnología

Inicio

Herramientas C Pérdida de memoria

Herramientas C Pérdida de memoria


Los programadores que trabajan en el lenguaje de programación C son capaces de asignar dinámicamente la memoria. Cuando se asigna la memoria, debe cancelar la asignación tarde por lo que el equipo sabe que puede utilizar esa memoria para otros fines. Un programa que no desasignar toda su memoria tiene una pérdida de memoria. Las pérdidas de memoria pueden ser el resultado de una programación descuidada o un error difícil de encontrar, pero existe ni herramientas manera de ayudar a eliminar las pérdidas de memoria desde el código.

ccmalloc

La herramienta ccmalloc puede estar vinculada a un programa de seguimiento de cómo se utiliza la memoria. Se le dirá cómo se asignó la cantidad de memoria y luego se cancela la asignación, que le ayuda a encontrar fugas, y también se informará sobre las posiciones de memoria sin inicializar sobrescritos, memoria, intenta escribir datos en la memoria o en la memoria desasignado que se cancela la asignación varias veces. Usando ccmalloc en conjunción con un buen depurador hará que sus recursos de memoria de uso de código de forma mucho más eficiente. El nombre es una referencia a malloc, la función de C utilizado para la asignación de memoria.

NJAMD

NJAMD, que significa "no sólo otro depurador malloc," asigna un bloque grande de datos y luego metes hacia fuera como el programa que se está analizando lo necesita. Esto permite NJAMD para analizar exactamente lo que le pasó a la memoria asignada después de que el programa ha terminado de ejecutarse. Esta herramienta tiene una serie de opciones que permiten el codificador de elegir cómo de cerca NJAMD buscará pérdidas de memoria. Más búsquedas exhaustivas llevará bastante más tiempo.

mpatrol

La herramienta de depuración mpatrol crea una matriz de tamaño fijo y luego asigna memoria para el programa de esa matriz. Las acciones de la herramienta mpatrol muchas características con otras herramientas de detección de fugas de memoria, pero también se puede utilizar para ver lo bien que un programa se ejecuta con recursos limitados mediante la especificación de un conjunto relativamente pequeño para que use el programa. Incluso para un programa sin pérdidas de memoria, esta herramienta puede probar la eficiencia con que opera.

CMemLeak

No son complicados todas las herramientas de pérdida de memoria. CMemLeak, por ejemplo, sólo traza un par de llamadas de función, pero evita algunos de los gastos generales mentales con el aprendizaje de cómo utilizar las herramientas de pleno derecho de detección de fugas de memoria. Para las personas que escriben programas más cortos, o que de código con menos frecuencia, una herramienta simple que hace el trabajo puede ser una mejor opción.