マンガで分かる Java入門講座

第11章 Javaのシステム
11-2. メモリリーク

Javaのメモリリークが、なぜ起きるのかを、Javaのメモリ管理の仕組みから解説します。

● Javaのメモリリーク

 ガベージコレクタは、どこからも参照のなくなったインスタンスを解放します。これは逆に言うと、どこかに参照が残り続けていると解放されないことを意味します。

 アプリケーションを長く実行する場合、ずっと保持し続ける変数にインスタンスを入れると、その変数を使わなくなるまでメモリを確保し続けます。

 また、インスタンスを登録する仕組みはあるけど、削除する仕組みのないクラスを作ってしまうと、どんどんメモリを食い潰すことになってしまいます。

 そういった際に、メモリが徐々に食い潰されていく現象を「メモリリーク」と呼びます。メモリリークが発生すると、アプリケーションが不安定になったり、強制終了したりします。


この講座のマンガ部分は「箱人形マンガ(Box Comic) 」で作成しています。
作成:2013/06/07  更新:2015/08/09  [Permalink]