誰でもカードテーブルの概念を説明し、.Netのガベージコレクションプロセスにおける障壁を書き込むことができますか? 私は本当にこれらの用語の説明を得ることができません。つまり、どのようなもので、どのように役立ち、どのようにGCに参加するのですか? 本当にありがとうございます。.netでのカードテーブルと書き込み障壁GC
2
A
答えて
1
カードテーブルは、古い世代の256バイトのメモリのチャンクごとに1ビットのビットの配列です。ビットは通常0であるが、古い世代のオブジェクトのフィールドが書き込まれるとき、オブジェクトメモリアドレスに対応するビットは1にセットされる。これは書き込みバリアの実行と呼ばれます。
.NETのガベージコレクタは世代別世代であり、若い世代のオブジェクトのみをトレースして収集するフェーズがあります。したがって、それはルーツから始まるオブジェクトグラフを通過しますが、古い世代のオブジェクトには再帰しません。この方法では、オブジェクトグラフ全体のわずかな部分しかトレースしません。
トレースを開始するルートを見つけるために、若い世代オブジェクトのプログラムのローカル変数とグローバル変数をスキャンします。しかし、旧世代のオブジェクトから参照されるオブジェクトのみが欠落してしまいます。したがって、カードテーブルビットが設定されている古い世代のオブジェクトのフィールドもスキャンします。
若い世代のコレクションが完了した後、すべてのカードテーブルビットをゼロにリセットします。
関連する問題
- 1. 同期ブロック内の読み込み障壁と書き込みバリアは何ですか
- 2. メモリ障壁は、IOS ARMの弱いメモリ書き込み順序を解決するには?
- 3. モバイルへのエントリーへの障壁の障壁
- 4. カードテーブル検証失敗によるG1 GCのJVMクラッシュ
- 5. UNIXファイルの書き込みと書き込み以外の書き込み
- 6. Qt同期障壁?
- 7. DispatchQueue障壁問題
- 8. クルーズコントロール.Net例外書き込みmsbuild-results.xml
- 9. .NETの64ビットシステムでのアトミック読み取り/書き込みサイズ?
- 10. C#の障壁と例外handeling
- 11. arduino書き込みと読み込み
- 12. ファイル読み込みと書き込み
- 13. テキストのファイルへの書き込みと書き込みR
- 14. .NETでのバイト配列の読み取りと書き込みWindowsフォーム
- 15. 辞書形式のテストファイルの書き込みと読み込み
- 16. 電子は、USBドライブへの書き込みと書き込み
- 17. ファイルへの書き込みと書き込み
- 18. Python:ファイルへの書き込みと書き込みエラー
- 19. カサンドラ書き込みタイムアウト書き込み
- 20. 書き込みキャッシュポリシーに書き込み/フェッチを書き込む
- 21. ファイルへの読み書きの高速読み込みと書き込み
- 22. iPhoneでのテキストファイルの書き込みと読み込み
- 23. システムコールのC言語での読み込みと書き込み
- 24. Nettyチャンネル書き込みとフラッシュ書き込みメッセージなし
- 25. C#.Net Windowsアプリケーションヒンディー語書き込みと表示
- 26. 同じFileStreamでの読み込みと書き込み
- 27. SpringBatch読み込みとチャンクでの書き込み
- 28. アセンブリ内の読み込みと書き込みと整数ATT
- 29. オブジェクトの書き込み/読み込み
- 30. シリアライゼーションとファイル書き込み
ウィルソンのカードマーキング用紙を読んだことがありますか? doi 10.1145/66068.66077 – the8472
いいえ、その記事にすべての回答が含まれている場合は、リンクを共有することができれば本当に感謝しています。 – maverickabhi
この記事が参考になった:https://msdn.microsoft.com/en-us/library/ms973837.aspx – FuleSnabel