c#中Thread中挂起和休眠的区别

时间:2015-10-29 11:27:04

标签: c#

Thread.Sleep(5000);
stopwatch.Stop();
Console.WriteLine(stopwatch.ElapsedMilliseconds);
Thread.suspend(5000);
Console.WriteLine(stopwatch.ElapsedMilliseconds);

2 个答案:

答案 0 :(得分:5)

Sleep用于单个线程,它暂停一个线程一段时间。 Whereas suspend is deprecated

另请查看MSDN关于暂停的备注:

  

不要使用Suspend和Resume方法来同步   线程的活动。你无法知道一个线程是什么代码   暂停时正在执行。如果你暂停一个线程   在安全权限评估期间持有锁,其他线程在   AppDomain可能被阻止。如果你暂停一个线程   执行一个类构造函数,AppDomain中的其他线程   尝试使用该类被阻止。死锁可能会发生   容易。

答案 1 :(得分:2)

睡眠意味着线程睡眠时间为5000(毫秒)。 suspend表示在恢复线程启动时线程停止。