博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
利用事件对象同步线程
阅读量:6590 次
发布时间:2019-06-24

本文共 1059 字,大约阅读时间需要 3 分钟。

 

 
  1. #include <windows.h> 
  2. #include <stdio.h> 
  3.  
  4. #define NUMTHREADS 3 
  5. #define BUFFER_SIZE 16 
  6. #define FOR_TIMES 5 
  7.  
  8. HANDLE hEvent; 
  9. BYTE lpSharedBuffer[16] = {0}; 
  10.  
  11. void UseEvents(void); 
  12. DWORD WINAPI EventFunction(LPVOID lpParam); 
  13.  
  14. int main(){ 
  15.     UseEvents(); 
  16.  
  17. void UseEvents(void){ 
  18.     HANDLE hThread; 
  19.     hEvent = CreateEvent(NULL,TRUE,FALSE,NULL); 
  20.     if(hEvent == NULL){ 
  21.         printf("CreateEvent failed.(%d)\n",GetLastError()); 
  22.         return
  23.     } 
  24.     hThread = CreateThread(NULL,0,EventFunction,NULL,0,NULL); 
  25.     if(hThread == NULL){ 
  26.         printf("CreateThread failed.(%d)\n",GetLastError()); 
  27.         return
  28.     } 
  29.     Sleep(2000); 
  30.     CopyMemory(lpSharedBuffer,"Event",strlen("Event")); 
  31.     SetEvent(hEvent); 
  32.  
  33. DWORD WINAPI EventFunction(LPVOID lpParam){ 
  34.     DWORD dwWaitResult; 
  35.     dwWaitResult = WaitForSingleObject(hEvent,INFINITE); 
  36.     if(dwWaitResult!=WAIT_OBJECT_0){ 
  37.         printf("Wait error:%d\n",GetLastError()); 
  38.         return 0; 
  39.     } 
  40.     printf("0%x",lpSharedBuffer); 
  41.     system("pause"); 
  42.     if(!ResetEvent(hEvent)){ 
  43.         printf("SetEvent failed(%d)\n",GetLastError()); 
  44.         return 0; 
  45.     } 
  46.     return 1; 

 

本文转hackfreer51CTO博客,原文链接:http://blog.51cto.com/pnig0s1992/671313,如需转载请自行联系原作者

你可能感兴趣的文章
Android 中文 API (93) —— BaseExpandableListAdapter
查看>>
PowerShell中单引号和双引号的区别
查看>>
【ARM】gpio·arm体系结构之gpio
查看>>
数据库启动时遇到ORA-01578错误
查看>>
Fedora 12 (Constantine)Beta版及Alpha镜像下载
查看>>
稳扎稳打Silverlight(3) - 2.0控件之Border, Button, Calendar, Canvas, CheckBox, ComboBox
查看>>
Who's Using Cyberthreat Intelligence and How?
查看>>
【翻译】SQL Server索引进阶:第六级,标签
查看>>
确定两串乱序同构
查看>>
寒假研究计划
查看>>
Android:ListView、BaseAdapter、convertView、ListView优化及事件、notifyDataSetChanged()
查看>>
新版发布功能上线,新增「大屏快照」功能!
查看>>
代码调优及其他zz
查看>>
Centos7+Postfix+Dovecot实现邮件收发
查看>>
“蒜你狠”和“豆你玩”的遐想。。
查看>>
无法解析连接描述中指定的SID
查看>>
ext3格式化成ext4
查看>>
自己编译redhat 9.0内核心得
查看>>
SQL Server数据库的管理及维护
查看>>
Silverlight在MSDN类库中的小变化
查看>>