我正在尝试找出一种方法来验证 BackgroundWorker 线程是否处于活动状态(即仍在运行。该线程本质上是作为一个简单的无限循环实现的:
while (AllConditionsMet())
{
DoSomeMagic();
Thread.Sleep(10000);
}
IsAlive()
到目前为止,我发现的最接近的是IsBusy属性,但考虑到我的线程大部分时间是 Sleep(),我不确定这是否能完成这项工作。
我可以指望IsBusy做:
if (!myWorker.IsBusy)
RestartWorker();
还是我在找麻烦?