1

ばかげた質問があります。さまざまなC#オブジェクトへの参照の数を格納するために使用しているC ++の配列がある場合(IntPtrsを推測していますが、まだそれほど多くはありません)、C#のGCはこれらのオブジェクトを収集しないことをどのように認識しますか?つまり、マークアンドスイープアルゴリズムはアンマネージコード構造を認識できませんよね?したがって、これらのC#オブジェクトへの唯一の参照がこの構造内にある場合、それらを収集しないようにGCに指示するために特別なことをする必要はありませんか?

4

1 に答える 1

3

はい、オブジェクトが生きていてGCから安全に保たれるだけでなく、GCによって移動されていないことを確認するために特別な注意を払う必要があります。

見てみましょう: http://dotnet.dzone.com/news/net-memory-control-use-gchandl

于 2012-12-14T17:12:28.810 に答える