我有一个名为的类BackgroundWorker
,它有一个不断运行的线程。要关闭这个线程,一个名为stop
to 的实例变量需要是true
.
为了确保在使用完类时释放线程,我添加IDisposable
了一个调用Dispose()
. 假设stop = true
确实会导致该线程退出,那么这个 sippet 是否正确?Dispose
从终结器调用很好,对吗?
Dispose
如果object
继承,终结器应该总是调用IDisposable
,对吗?
/// <summary>
/// Force the background thread to exit.
/// </summary>
public void Dispose()
{
lock (this.locker)
{
this.stop = true;
}
}
~BackgroundWorker()
{
this.Dispose();
}