- 积分
- 10954
- 好友
- 记录
- 主题
- 帖子
- 听众
- 收听
|
本帖最后由 水手 于 2014-8-17 19:32 编辑
线程控制:
1.Thread.Suspend 方法 注意:此方法现在已过时。 挂起线程,或者如果线程已挂起,则不起作用。
2.Thread.Resume 方法 注意:此 API 现在已过时。
.NetFrameWork4.0开始这两个可控线程的方法已过时,现在使用ManualResetEvent 类及AutoResetEvent 类.
另,线程的并发控制,可使用信号量机制Semaphore 类。
Demo中使用ManualResetEvent对线程进行控制。ManualResetEvent和AutoResetEvent 的区别在于:AutoResetEvent只会给一个线程发送信号,而不会给多个线程发送信号。在我们需要同步多个线程的时候,就只能采用ManualResetEvent了。至于深层次的原因是,AutoResetEvent在set()之后,会将线程状态自动置为false,而ManualResetEvent在Set()后,线程的状态就变为true了,必须手动ReSet()之后,才会重新将线程置为false。
|
|