C++ と C# でのガベージ コレクションのパフォーマンスを比較したいと考えています。GC.Collect()
手動で呼び出すことは可能ですか? (特定の瞬間に実行したい。)
2 に答える
アンセーフ コードを使用する以外に、C# でガベージ コレクションを無効にする方法はありません。またはそのさまざまなオーバーロードの 1 つを呼び出して、ガベージ コレクターを強制的に実行できます。System.GC.Collect()
完全な MSDN ドキュメント: http://goo.gl/gc7mQ
1 つの特定のクラスの破棄をトリガーできます。コンテキストIDisposeable
内で実装および実行されるクラスは、コンテキストが終了すると破棄されます。
using
using
MyLogger logger = new MyLogger("time.dat");
logger.log("before using");
using (MyDisposableClass myClass = new MyDisposableClass())
{
logger.log("before execution");
myClass.doingSomething()
logger.log("after execution");
logger.log("before dispose");
}
logger.log("after dispose");
これは事実上間違っています - コメントを参照してください。