Che cos’è un Memory leak in informatica

Che cos’è un Memory leak in informatica

Un problema molto diffuso nella programmazione (per esempio in C++ o Java) sono i memory leak. In informatica, un memory leak (falla nella memoria) è un particolare tipo di consumo non voluto di memoria dovuto alla mancata deallocazione dalla memoria di variabili e dati non più utilizzati da parte dei processi.

Che cos'è un Memory leak in informatica

In altre parole, con questo termine si indicano quelle perdite di memoria che avvengono perché ad allocazione di memoria da una parte, non corrisponde una deallocazione da un’altra parte del codice. Se un problema di questo genere esiste e non viene corretto, un programma che rimane attivo per un certo periodo di tempo incrementa sempre più il suo utilizzo di memoria, no a che la memoria disponibile nel sistema non viene interamente consumata. A questo punto non solo il programma non può più funzionare, ma anche gli altri programmi presenti sul sistema possono riscontrare problemi per la mancanza di memoria da allocare; in alcuni casi il sistema potrebbe diventare addirittura inutilizzabile e potrebbe diventare necessario un riavvio del sistema. Purtroppo, se la perdita di memoria è sufficientemente piccola, è facile che un problema di questo tipo possa sfuggire in fase di test e creare problemi solo dopo un lungo utilizzo in fase di produzione. Per questo motivo esistono dei tool che aiutano nell’individuazione di questi problemi.

Pubblicato da Vito Lavecchia

Lavecchia Vito Ingegnere Informatico (Politecnico di Bari) Email: [email protected] Sito Web: www.vitolavecchia.altervista.org

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *