读书人

实现四个线程打印如此结果解决方案

发布时间: 2012-05-24 11:55:41 作者: rapoo

实现四个线程打印如此结果
12345...912345...912345...912345...9

打印四组12345...9

代码实现

[解决办法]
随便写了个,楼主可以参考下

C/C++ code
#include <IOSTREAM>#include <WINDOWS.H>using namespace std;DWORD WINAPI fun1(LPVOID lpParameter);DWORD WINAPI fun2(LPVOID lpParameter);DWORD WINAPI fun3(LPVOID lpParameter);DWORD WINAPI fun4(LPVOID lpParameter);HANDLE hMutex;int main(){    HANDLE hTread1,hTread2,hTread3,hTread4;    hMutex=CreateMutex(NULL,FALSE,NULL);    hTread1=CreateThread(NULL,0,fun1,NULL,0,NULL);    hTread2=CreateThread(NULL,0,fun2,NULL,0,NULL);    hTread3=CreateThread(NULL,0,fun3,NULL,0,NULL);    hTread4=CreateThread(NULL,0,fun4,NULL,0,NULL);    CloseHandle(hTread1);    CloseHandle(hTread2);    CloseHandle(hTread3);    CloseHandle(hTread4);    Sleep(1000);    system("pause");    return 0;}DWORD WINAPI fun1(LPVOID lpParameter){    WaitForSingleObject(hMutex,INFINITE);    cout<<"12345...9";    ReleaseMutex(hMutex);    return 0;}DWORD WINAPI fun2(LPVOID lpParameter){    WaitForSingleObject(hMutex,INFINITE);    cout<<"12345...9";    ReleaseMutex(hMutex);    return 0;}DWORD WINAPI fun3(LPVOID lpParameter){    WaitForSingleObject(hMutex,INFINITE);    cout<<"12345...9";    ReleaseMutex(hMutex);    return 0;}DWORD WINAPI fun4(LPVOID lpParameter){    WaitForSingleObject(hMutex,INFINITE);    cout<<"12345...9";    ReleaseMutex(hMutex);    return 0;} 

读书人网 >C++

热点推荐