18

Dispose パターンを実装したばかりで、この行を入力したところ、メソッドのパラメーターとしてGC.SuppressFinalize(this)以外のものを使用するユースケースがあるかどうか疑問に思っていました。this

これは典型的なパターンです:

public void Dispose()
{
    Dispose(true);
    GC.SuppressFinalize(this);  // right here
}

GC.SuppressFinalize()以外のもので呼び出すことは意味がありthisますか?

public void Dispose()
{
    Dispose(true);
    GC.SuppressFinalize(foo);  // should this ever happen?
}
4

1 に答える 1