【多线程】两个线程 交替执行
来源:互联网 发布:mac电脑密码不对 编辑:程序博客网 时间:2024/05/18 06:23
#include <iostream>#include <windows.h>using namespace std;HANDLE hMutex;DWORD WINAPI Fun(LPVOID lpParamter){ while(1){WaitForSingleObject(hMutex, INFINITE);cout<<"A"<<endl; Sleep(1000);ReleaseMutex(hMutex); }return 0;}DWORD WINAPI Fun1(LPVOID lpParamter){while(1) { WaitForSingleObject(hMutex, INFINITE); cout<<"B"<<endl; Sleep(1000); ReleaseMutex(hMutex);}return 0;}int main(){HANDLE hThread = CreateThread(NULL, 0, Fun, NULL, 0, NULL);hMutex = CreateMutex(NULL, FALSE, (LPWSTR)"screen");CloseHandle(hThread);HANDLE hThread1 = CreateThread(NULL, 0, Fun1, NULL, 0, NULL);CloseHandle(hThread1);while(1);return 0;}
以上是两个子线程之间交替。主线程闲着。
下面是主线程和一个子线程之间交替
#include <iostream>#include <windows.h>using namespace std;HANDLE hMutex;DWORD WINAPI Fun(LPVOID lpParamter){while(1) { WaitForSingleObject(hMutex, INFINITE); Sleep(1000); cout<<"Fun display!"<<endl; ReleaseMutex(hMutex);}}int main(){HANDLE hThread = CreateThread(NULL, 0, Fun, NULL, 0, NULL);hMutex = CreateMutex(NULL, FALSE, (LPWSTR)"screen");CloseHandle(hThread);while(1) { WaitForSingleObject(hMutex, INFINITE); Sleep(1000); cout<<"main display!"<<endl; ReleaseMutex(hMutex);}return 0;}
各位大神,如果我想只输出10次呢?怎么改呢?
- 【多线程】两个线程 交替执行
- 两个线程交替执行
- 两个线程交替执行
- java两个线程交替执行
- java多线程问题,线程交替执行
- Java 多线程中。两个线程交替执行,一个输出偶数,一个输出奇数
- Java 多线程中。两个线程交替执行,一个输出偶数,一个输出奇数(方法一)
- Java 多线程中。两个线程交替执行,一个输出偶数,一个输出奇数(方法二)
- 两个线程按特定时间顺序交替执行
- 多线程技术: 两个线程交替打印奇数和偶数
- 多线程交替执行
- 两个线程执行生产 * 两线程执行消费 * 依次交替循环
- 两个线程交替打印ABABAB
- 两个线程交替打印ABABAB
- 两个线程交替打印ABCDEF
- 两个线程的交替打印
- Java多线程的交替执行
- Java多线程交替执行任务
- Lucene Search In Liferay
- 小顾的故事一
- 3个杯子100ML50ML30ML
- android facebook 导航
- Thank you
- 【多线程】两个线程 交替执行
- VS中启动OpenMp
- android开发前景剖析:机遇难得,挑战很大
- VC欣赏、家人是阻力,极客化、国际化——90后创业生态
- Fedora桌面Live,Fedora KDE Live,Fedora 定制版 Live有什么不同?
- [其他]win7关闭自动更新
- js 设计模式 第十六章 Command Pattern
- 总是得到“Cannot load driver ‘org.gjt.mm.mysql.Driver’”
- 由String s=new String ("abc");引发的联想