Memory leak
Il memory leak è il consumo di memoria informatica causato dal mancato rilascio ( deallocazione ) dello spazio di memoria da parte del programma informatico. I programmi utilizzano la memoria del computer per la registrazione dei dati durante l'esecuzione. Ogni programma utilizza ( allocazione ) una particolare porzione della memoria. Al termine dell'utilizzo lo spazio di memoria può essere liberato, in modo manuale o dinamico, per essere utilizzato dagli altri programmi e processi. In alcuni ambienti di programmazione ( es. linguaggio C ) è il programmatore a dover comandare l'allocazione e la deallocazione dello spazio di memoria. L'assenza dell'operazione di deallocazione può causare l'esaurimento dello spazio di memoria volatile disponibile ( memoria RAM ) e l'interruzione forzata ( crash ) del programma informatico, con conseguente perdita dei dati non ancora salvati sui dispositivi di memoria di massa.
Esaurimento della memoria. Il memory leak non è l'esaurimento dello spazio di memoria bensì una delle cause dello stesso. I due concetti non indicano la stessa cosa. Il memory leak è causato da una cattiva gestione manuale della memoria durante la fase di sviluppo di un programma informatico. L'esaurimento della memoria disponibile è, invece, l'effetto.