verify_compaction_references(toward: nil, double_heap: false) -> HashRuby 2.7.0 から[permalink][rdoc][edit]-
コンパクションの参照の一貫性を検証します。
このメソッドは処理系依存 (CRuby 特有) です。コンパクション中に移動されたオブジェクトは T_MOVED オブジェクトに置き換えられます。コンパクション後には T_MOVED を参照するオブジェクトは存在するべきではありません。
double_heapに真を指定した場合は、全てのオブジェクトが移動する余地を確保するためにヒープを 2 倍にします。その後、全ての移動を確実にするためにヒープをコンパクションして、全ての参照を更新して、それからフル GC を実行します。もし T_MOVED への参照をもつオブジェクトがあれば、マークスタックにプッシュされて、 SEGV が起きるでしょう。- [PARAM]
toward: - nil か :empty を指定します。
- [PARAM]
double_heap: - ヒープサイズを2倍にするかどうかを真偽値で指定します。
- [RETURN]
- GC.compact の返り値と同じです。
[SEE_ALSO] GC.compact
- [PARAM]