VC++ 学习笔记------Window 多线程(生产消费者模式 案例)
2018-03-12 11:13
302 查看
理论部分参考
这篇文章讲生产-消费者模式比较详细
http://ifeve.com/producers-and-consumers-mode/
使用VC++ 模式实现如:
补充年:
这篇文章讲生产-消费者模式比较详细
http://ifeve.com/producers-and-consumers-mode/
使用VC++ 模式实现如:
//创建信号量 HANDLE h = ::CreateEvent(NULL,FALSE,FALSE,NULL); //启动线程 AfxBeginThread(product, this, THREAD_PRIORITY_NORMAL, 0, 0); AfxBeginThread(consum, this, THREAD_PRIORITY, 0, 0); // UINT ***::product(void *pParam){ (***)pParam->product(); return 0; } // UNIT ***::consum(void *p){ (***)p->consum(); return 0; } //生产者 void product(){ while(1){ //生产 过程 ::Sleep(10);//线程沉睡函数,模拟生产过程 setEvent(h);//发送信号到消费端 } } //消费者 void consum(){ while(1){ ::WatForSingleObject(h,INFINTE);//信号量阻塞,直到接收到信号量 // 消费 - - 消费 } }
补充年:
//线程退出信号,可以监听是否退出当前线程 int iExitEvent = ::WaitForSingleObject(m_hExitEvent, 0); if (WAIT_OBJECT_0 == iExitEvent) { return FALSE; }
相关文章推荐
- 学习笔记_JavaSE_24-JDK1.5LOCK锁、生产消费者案例、线程池组、设计模式
- Java多线程学习笔记--生产消费者模式
- Java多线程学习笔记--生产消费者模式
- 9. 多线程 Part 4 生产者及消费者模式 --- 学习笔记
- VC++ 学习笔记------Window 多线程(理论以及方法(函数))
- 【我的Java笔记】多线程_等待唤醒机制(生产消费者模式)
- 多线程学习之六生产消费者模式
- 设计模式笔记之六:生产消费者模式
- 多线程等待唤醒机制之生产消费者模式
- 模式对话框和通用控件(『VC++技术内幕』学习笔记(9))
- Java多线程生产消费者模式和BlockingQueue同步队列
- 多线程等待唤醒机制之生产消费者模式
- Java SE学习笔记:线程通信、生产者与消费者案例、线程状态(线程的生命周期)、线程操作、Condition类
- python 多线程笔记(6)-- 生产者/消费者模式(续)
- 学习笔记二,vc++创建多线程服务器(二)
- [知了堂学习笔记]_线程通信(生产者和消费者模式)
- <JAVA学习笔记7>——生产者、消费者案例(1)
- 【多线程】_线程操作案例——生产者和消费者笔记
- 关于多线程中单例模式的使用学习笔记
- 多线程等待唤醒机制之生产消费者模式