Garbage Collection
コンピューターサイエンスでは、ガベージコレクションはメモリ管理の一種です。メモリ内の使用されていないオブジェクトやポインターを自動的に整理し、リソースを再び使えるようにします。一部のプログラミング言語にはガベージコレクションが組み込まれていますが、使用されていないメモリを管理するために独自の関数が必要な言語もあります。
ガベージコレクションの一般的な方法に、参照カウントと呼ばれるものがあります。この方法では、メモリに保存されている各オブジェクトへの参照の数を単純に数えます。オブジェクトへの参照が0個の場合、そのオブジェクトは不要と見なされ、メモリの領域を解放するために削除できます。高度な参照カウントでは、互いにしか参照していないオブジェクトを検出できます。これは、それらのオブジェクトが親のプロセスから使用されていないことを示します。
ガベージコレクションは、プログラムのソースコードがコンパイルされて実行可能なプログラムになるコンパイル時に行うこともできます。この方法では、コンパイラーが、ある時点以降にメモリ内でアクセスされることのないリソースを判断します。その後、それらのリソースをメモリから自動的に解放する命令を追加できます。これは使用されていないオブジェクトをなくす効果的な方法ですが、プログラムに必要な参照を削除しないよう、慎重に行う必要があります。
ガベージコレクションは、プログラムがRAMを使い過ぎないようにするため、ソフトウェア開発の重要な一部です。プログラムをより効率的に実行できるだけでなく、プログラムのクラッシュにつながるメモリリークなどの深刻なバグを防ぐこともできます。
知識をテストする