Únik paměti
Únik paměti je typ programátorské chyby, kvůli které program pomalu spotřebovává systémovou paměť, dokud žádná nezbude. K úniku paměti dochází pomalu, takže výkon počítače se postupně zhoršuje, dokud program nespadne nebo celý operační systém nezamrzne. Ukončení programu, který únik způsobuje, uvolní systémovou paměť a problém vyřeší, dokud se program nespustí znovu.
K únikům paměti dochází, když program po skončení potřeby neuvolní paměť. Když program spustí proces, požádá systém o určité množství paměti potřebné k jeho spuštění. Po dokončení procesu by měl program tuto paměť uvolnit zpět systému, aby ji mohly používat jiné programy. Pokud program neobsahuje správné funkce pro uvolnění paměti (nebo tyto funkce nejsou správně použity), bude tuto paměť místo toho držet neomezeně dlouho. Když program tento proces později spustí znovu, požádá systém o další paměť místo použití paměti, kterou už přidělil, a tím zvyšuje množství RAM, které používá, dokud systému nezbude nic pro ostatní funkce.
Program, u kterého dochází k úniku paměti, bude při každém spuštění dál unikat paměť, dokud nebude chyba opravena. Naštěstí sady pro vývoj softwaru často obsahují nástroje pro ladění, které mohou kontrolovat zdrojový kód programu a hledat úniky paměti. Jakmile vývojář programu chybu najde, může program aktualizovat a vydat opravu.
NOTE: Některé programovací jazyky, například Java a Python, používají techniku správy paměti nazvanou „uvolňování paměti“, která automaticky znovu získává paměť a může vyřešit mnoho (ale ne všechny) chyb způsobených únikem paměti.
Otestujte své znalosti