完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
|
|
相关推荐
1个回答
|
|
#include
#include #include #include #include #include #include #include using namespace std; DWORD WINAPI Fun1(LPVOID lpParameter); DWORD WINAPI Fun2(LPVOID lpParameter); DWORD WINAPI Run1(LPVOID lpParameter); DWORD WINAPI Run2(LPVOID lpParameter); int processnum; int buffernum; queue queue int main( ) { printf("请输入需要执行进程的个数:"); scanf("%d",&processnum); printf("请输入每个缓冲区最多能缓冲进程的个数:"); scanf("%d",&buffernum); HANDLE hThread1= CreateThread(NULL, 0, Fun1, NULL, 0, NULL); HANDLE hThread2 = CreateThread(NULL, 0, Fun2, NULL, 0, NULL); HANDLE hThread3= CreateThread(NULL, 0, Run1, NULL, 0, NULL); HANDLE hThread4 = CreateThread(NULL, 0, Run2, NULL, 0, NULL); CloseHandle(hThread1); CloseHandle(hThread3); CloseHandle(hThread2); CloseHandle(hThread4); Sleep(4000); return 0; } DWORD WINAPI Fun1(LPVOID lpParameter) { while(processnum>0){ if(B1.size()>=buffernum){ printf("一号缓冲区等待。。。n"); Sleep(40); }else{ printf("一号缓冲区缓冲程序:%dn",processnum); B1.push(processnum); processnum--; Sleep(40); } } return 0; } DWORD WINAPI Fun2(LPVOID lpParameter) { Sleep(30); while(processnum>0){ if(B2.size()>=buffernum){ printf("2号缓冲区等待。。。n"); Sleep(30); }else{ printf("2号缓冲区缓冲程序:%dn",processnum); B2.push(processnum); processnum--; Sleep(40); } } return 0; } DWORD WINAPI Run1(LPVOID lpParameter) { while(processnum>=0){ if(B1.size()>0){ printf("一号执行程序:%dn",B1.front()); B1.pop(); Sleep(40); }else{ printf("一号执行等待。。。n"); Sleep(400); } } return 0; } DWORD WINAPI Run2(LPVOID lpParameter) { while(processnum>=0){ if(B2.size()>0){ printf("2号执行程序:%dn",B2.front()); B2.pop(); Sleep(40); }else{ printf("2号执行等待。。。n"); Sleep(400); }} return 0; } |
|
|
|
只有小组成员才能发言,加入小组>>
2586 浏览 0 评论
781浏览 1评论
547浏览 0评论
291浏览 0评论
491浏览 0评论
214浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-1-11 12:05 , Processed in 1.204633 second(s), Total 79, Slave 61 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号