メモリリークとは?
めもりりーく
確保したメモリを解放しないまま積み上げ続け、最終的にシステムのメモリを枯渇させる不具合です。
メモリリークとは、プログラムが動的に確保したメモリ領域を使い終わった後も解放せず、プロセスが保持し続ける状態のこと。長時間動作するサービスでは徐々にメモリ使用量が増加し、最終的にOOMKillerによるプロセス強制終了やシステムクラッシュに至ることがある。C/C++では手動解放の漏れが主因で、GC付き言語でも循環参照が原因で発生する。
使い方・例文
長期運用のデーモンでメモリリークを発見し、valgrindで解析したところ、コネクション切断時にバッファを解放していないことが原因だとわかった。
この用語をシェア
最終更新: