线程停止

时间:2010-11-18 22:37:21

标签: c# multithreading

通过在某个时刻采用“break”命令来停止线程是一种安全的方法来停止线程吗?

3 个答案:

答案 0 :(得分:3)

线程中止,我认为是你的意思,不适合使用 - 除非线程也被appdomain屏障隔开。

答案 1 :(得分:3)

如果您在Parallel.For中引用Break()方法,则专门设计以请求安全中止循环迭代。

此技术的一个示例是described here.

答案 2 :(得分:3)

你的意思是做这样的事情吗?

void SomeMethod()
{
    while(true)
    {
        //do something
        if(condition)
            break;
    }
}

//somewhere else...
Thread t = new Thread(SomeMethod);
t.Start();

如果是,那么是的,这是结束线程的安全方式。