BackgroundWorker
スレッドが常に実行されているという名前のクラスがあります。このスレッドをオフにするには、 to という名前のインスタンス変数がstop
である必要がありますtrue
。
クラスの使用が終了したときにスレッドが確実に解放されるようにするために、IDisposable
を呼び出すファイナライザーを追加しましたDispose()
。それが実際にこのスレッドを終了させると仮定するとstop = true
、このシペットは正しいですか? ファイナライザーから呼び出しDispose
てもいいですよね?
継承するDispose
場合、ファイナライザーは常に呼び出す必要がありますよね?object
IDisposable
/// <summary>
/// Force the background thread to exit.
/// </summary>
public void Dispose()
{
lock (this.locker)
{
this.stop = true;
}
}
~BackgroundWorker()
{
this.Dispose();
}