Thread.Suspend()
如您所知,方法已过时。当按钮单击事件发生时,我想立即暂停线程。我使用了 Thread.Suspend() 并且效果很好,但是每个人都建议使用 Thread.Suspend() 方法不是暂停任务的好方法。我使用了一个标志来暂停任务,但是每次按钮单击事件发生时,我都必须等待退出任务。我使用 Thread.IsAlive 标志来等待线程退出,但这种方法会冻结表单。
void ButtonClickEvent(object sender, ButtonClickEventArgs e)
{
TheadExitFlag = false;
if(MyThread != null)
{
while(MyThread.IsAlive);
//MyThread.Suspend();
}
}
void MyTask(void)
{
while(TheadExitFlag)
{
// some process
Thread.Sleep(5000);
}
}
我怎样才能立即暂停线程?