fuga de memoria
Sign in to saveAlso known as Missing Release of Memory after Effective Lifetime, leaking memory, memleak
type of resource leak that occurs when a computer program incorrectly manages memory allocations
Wikidata facts
- Subclass of
- resource leak
Show 1 more fact
- Stack Exchange tag
- stackoverflow.com/tags/memory-leaks
Sources (3)
via Wikidata · CC0
Article · Español
Una fuga de memoria (más conocido por el término inglés memory leak) es un error de software que ocurre cuando un reservada no es liberada en un programa de computación. Comúnmente ocurre porque se pierden todas las referencias a esa área de memoria antes de haberse liberado. Dependiendo de la cantidad de memoria perdida y el tiempo que el programa siga en ejecución, este problema puede llevar al agotamiento de la memoria disponible en la computadora. Este problema se da principalmente en aquellos lenguajes de programación en los que el manejo de memoria es manual (C o C++ principalmente), y por lo tanto es el programador el que debe saber en qué momento exacto puede liberar la memoria. Otros lenguajes utilizan un recolector de basura o conteo de referencias que automáticamente efectúa esta liberación. Sin embargo todavía es posible la existencia de fugas en estos lenguajes si el programa acumula referencias a objetos, impidiendo así que el recolector llegue a considerarlos en desuso. Existen varias formas de luchar contra este problema. Una forma es el uso de un recolector de basura incluso en el caso en el que este no sea parte estándar del lenguaje. El más conocido recolector de basura usado de esta manera es el Boehm-Demers-Weiser conservative garbage collector. Otras técnicas utilizadas son la adopción de esquemas de conteo de referencias o el uso de pools de memoria (técnica menos popular, utilizada en el servidor Apache y en el sistema de versiones Subversion). También hay herramientas para "auscultar" un programa y detectar las fugas. Una de las herramientas más conocidas es Valgrind.
Abstract from DBpedia / Wikipedia · CC BY-SA