我正在做一些多线程并使用 AutoResetEvents 和 ManualResetEvents 来控制我的主循环。当“破坏”线程时,我还必须处理这些信号,这很清楚。
但是我看到了如何处理 Waithandles 的不同方法,我不确定哪一种是正确的:
版本 1
if (disposing)
{
this.threadExitEvent.SafeWaitHandle.Dispose();
this.threadExitEvent.Close();
this.threadExitEvent = null;
....
}
版本 2
if (disposing)
{
this.threadExitEvent.Close();
this.threadExitEvent = null;
....
}
版本 3
if (disposing)
{
this.threadExitEvent.Close();
....
}