Thread.Suspend()已过时,其他途径解决线程挂起与恢复

2013年5月28日 由 Creater 留言 »

Thread.Suspend和Thread.Resume被废弃

可以通过类似的解决途径

volatile bool paused;
ManualResetEvent resumeEvent = new ManualResetEvent(false);

void MyThread()
{
    for (int i = 0; i < 100; i++)
    {
        if (paused)
        {
            resumeEvent.WaitOne();
        }

        DoWork();
    }
}

void Pause()
{
    resumeEvent.Reset();
    paused = true;
}

void Resume()
{
    paused = false;
    resumeEvent.Set();
}

参考文献:http://www.cnblogs.com/xd125/archive/2007/12/12/992406.html

广告位

发表评论

你必须 登陆 方可发表评论.