“Conocimientos Programación>C /C + + Programming

Cómo encontrar a una pérdida de memoria en Linux

2014/3/11
diferencia de los lenguajes de programación más recientes, como Java y Python, lenguajes de programación como C requieren que el programador para gobernar su propia memoria. C proporciona facilidades para solicitar la memoria libre y la devuelven al sistema operativo , pero nada más . Debido a lenguajes como C ofrecen ningún mecanismo de recolección de basura para limpiar los objetos que ya no están en uso , el programador debe estar alerta y eliminar los objetos cuando ya no sean necesarios. Si un programa no se deshace de sus objetos sin uso, la pérdida de memoria resultante puede hacer que el sistema operativo se cuelgue. Instrucciones
1

instalar la suite de depuración " valgrind " .

El paquete valgrind está disponible gratuitamente en todas las distribuciones de Linux. Para instalarlo en distribuciones Debian - derivadas como Ubuntu , escriba "sudo apt- get install valgrind . " En RedHat o Fedora , escriba " sudo yum install valgrind . "
2

Compile el programa con símbolos de depuración .

El compilador más común para los programas de C en sistemas Linux es gcc . Utilice el indicador " -g " instruir gcc para incluir símbolos de depuración en el binario que crea. ( Símbolos de depuración son necesarias para que los depuradores como valgrind para referirse a problemas específicos en su código ) .

Si usted tiene un programa C llamado " memoryhog.c . " por ejemplo, la compilación será el uso de este comando: gcc -g memoryhog.c
3

Ejecutar binarios del programa a través de valgrind

A menos que usted le indique lo contrario , gcc . nombrará a su programa " a.out ". Para ejecutar el binario llamado " a.out " utilizando valgrind , escriba el siguiente comando: . Valgrind - fugas verifique = full - show- alcanzable = sí /a.out
4

Inspeccione la salida de valgrind

Si todas las pérdidas de memoria han sido fijados , informes valgrind " todos los bloques montón fueron liberados - . hay fugas son posibles " .

Si las fugas de memoria están presentes, valgrind lista el número de línea sobre el que se crea la fuga.

C /C + + Programming
Cómo conseguir una fecha del sistema en C #
Recursos incrustados en Silverlight
¿Qué es Scarlett Fever
Cómo utilizar CoffeeCup StyleSheet Maker
Cómo utilizar GDB Con Eclipse
Cómo editar el Silverlight DataGrid
Cómo comprobar para Ctrl -D en C + +
Cómo quitar Microsoft Visual C + + mensajes
Conocimientos Informáticos © http://www.ordenador.online