Úniky paměti
Proces úniku paměti představuje postupné zvyšování objemu operační paměti, kterou spotřebovává spuštěný program. Je obvykle důsledkem chyby v programu, kvůli které se nevyužitá paměť neuvolňuje.
Obzvlášť nebezpečné jsou úniky paměti u programů, které pracují dlouhou dobu bez restartu. V takovém případě může takový program po určité době vyčerpat celý dostupný objem operační paměti, což povede k havarijnímu zastavení programu nebo, co je ještě horší, k nesprávnému fungování.
Existují následující způsoby prevence úniku paměti:
- Použití garbage collectorů, které uvolňují nevyužitou paměť, ale zároveň odebírají část systémových zdrojů na svou činnost, což vede k zpomalení systému nebo zásekům.
- Restart programu pomocí externího programu, což má za následek, že po ukončení činnosti programu se veškerá paměť vrací zpět do systému a úniky nejsou tak rozsáhlé.
- Odmítnutí dynamické alokace paměti, což na druhou stranu vylučuje podobné chyby, ale zároveň omezuje funkčnost programů.
- Použití vlastnických ukazatelů za účelem slaďování životnosti ukazatele a životnosti objektu, na který odkazuje. Avšak tento způsob není vhodný pro cyklické reference mezi objekty.
Viz také
-
období doby běhu,
po které program běží -
Zdrojová data,
které představují umístění dat -
soubor programů software,
který zajišťuje fungování aplikací -
soubor programů operační systém,
který zajišťuje správu systémů počítače