↑ダングリングポインタであるところの宇宙飛行士
<aside> 💡 Agenda
</aside>
本稿では, ガベージコレクションのアルゴリズムの一つであるマーク・アンド・スイープ法のアルゴリズムを解説します.
ヒープ領域のメモリ管理を自動的に行うソフトウェアであるGarbage Collection(ガベコレ)は現在広く用いられています.
ガベコレを取り入れている代表例に, golangやJavaがあります. 他にも様々なプログラミング言語がガベコレを採用しています.
ガベコレと聞くと難しそうという印象を覚えがちですが, マーク・アンド・スイープ法の考え方は非常にシンプルです. 実際, Rustで簡単なガベコレを実装したところ, 100行程度で書くことができました.
https://github.com/speed1313/gomicollector
そんなガベコレの仕組みを見ていきましょう!
初めに, ガベコレがなぜ必要になるかを知っておきましょう.
プログラムを実行する際には,
メモリ