コピーGC

提供: MonoBook
2021年10月28日 (木) 02:01時点におけるAdministrator (トーク | 投稿記録)による版 (ページの作成:「'''コピーGC'''(英語:Copy Garbage Collection)とは、ガベージコレクションアルゴリズムのひとつで、[[マーク&スイープ]…」)
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
ナビゲーションに移動 検索に移動

コピーGC英語:Copy Garbage Collection)とは、ガベージコレクションアルゴリズムのひとつで、マーク&スイープから派生したものである。

概要

マーク&スイープ方式では「ルートからメモリをたどり到達できなかったものを削除」するというものだが、コピー方式では「ルートからメモリをたどり到達できたものを別領域にコピー」するというもの。

ガベージコレクションの処理自体はマーク&スイープ方式の方が「メモリのコピー処理」を 伴わない分だけ高速であるが、メモリに強烈なフラグメンテーションを引き起こすため、 その後のメモリ確保の際に「指定されたサイズの連続した空き領域」を探すのに時間がかかる。

一方で、コピー方式は「メモリデフラグ」も同時に行われるので、 その後のメモリ確保の高速化が期待できる。

関連項目