プログラムが使用しなくなったメモリ上の空間を解放し、他のプログラムが使えるようにするのは、古くはプログラマの役割でした。それがゆえに、しばしば解放を忘れるというヒューマンエラーを引き起こし、ついには「メモリ不足です」と宣告され、あるいはオペレーションシステムもろとも轟沈し、作業中のデータはすべて消え失せ、モニタの前のユーザーは声にならない叫び声をあげるというシーンがしばしば見られました。 そこで研究され実装されたのが、ガベージコレクションです。これはメモリの解放を人任せにせず、プログラム自身が行えるようにするもので、プログラマの苦役の幾ばくかをも解放してくれました。 とはいえ、その実装方法やアルゴリズムは多種多様で、ガベージコレクションがあるから大丈夫、という思い込みだけでプログラムを作成していると、思わぬ落とし穴に転げ落ちることになります。 本書はアルゴリズムはもちろん、その実装方法とメ
![ガベージコレクション | 翔泳社](https://cdn-ak-scissors.b.st-hatena.com/image/square/60a16910f6c3f40ec93b698ca576c74fd12e3337/height=288;version=1;width=512/https%3A%2F%2Fwww.shoeisha.co.jp%2Fstatic%2Fbook%2Fog_image%2F9784798134208.jpg)