AutoResetEvent实现生产者消费者
2015-06-28 18:48
267 查看
用ManulResetEvent实现生产者消费者,声明了两个ManulResetEvent类型变量,其实用一个也可以。
现在用AutoResetEvent实现。Auto和Manual的区别是Auto只唤醒一个线程,Manual是唤醒所有。
现在用AutoResetEvent实现。Auto和Manual的区别是Auto只唤醒一个线程,Manual是唤醒所有。
public class AreTest { AutoResetEvent are; public AreTest(AutoResetEvent are) { this.are = are; } public void Add() { while (true) { Thread.Sleep(1000); Console.WriteLine(Thread.CurrentThread.Name + "\t生产者"); are.Set(); Console.WriteLine("通知消费者"); are.Reset(); Console.WriteLine("停止生产者"); are.WaitOne(); } } public void Del() { while (true) { Thread.Sleep(2000); Console.WriteLine(Thread.CurrentThread.Name + "\t消费者"); are.Set(); Console.WriteLine("通知生产者"); are.Reset(); Console.WriteLine("停止消费者"); are.WaitOne(); } } }
相关文章推荐
- Thinkphp url 除去index.php
- android 中 任务、进程和线程的区别
- Oracle表、列、约束的操作
- Java JProfiler教程
- 使用R的igraph,竟然能大致模拟展现人脑思维
- 双击jar不能运行的解决方法
- 将博客搬至CSDN
- 教程:在ZYBO中增加串口情况时如何用printf函数打印
- 优秀简历要遵循哪些规则
- winform datagridview 打印
- 串口通讯—异步通信方式
- PLY格式文件详解
- 当你学不进去的时候,试试“普瑞马法则”
- [工具推荐]003.Tortoisegit使用教程
- Solr游标
- 【日常】...
- Linux_5.4_线程清理
- 栈-链式存储结构-c语言
- java实现颜色Color对象和16进制之间的转换
- Tautology