线程同步----事作(Event)
来源:互联网 发布:淘宝商品编辑软件 编辑:程序博客网 时间:2024/05/19 14:36
Event 对象最大的用途,正是因为它们的状态完全在你掌控之下。Mutex 和 semaphore 就不一样了,它们的状态会因为诸如 WaitXXX( ) 之类的函数调用而变化。所以你可以精确告诉一个 event 对象做什么事,以及什么时间去做。
创建事件:
创建事件:
- HANDLE CreateEvent(
- LPSECURITY_ATTRIBUTES lpEventAttributes, // SD
- BOOL bManualReset, // reset type
- BOOL bInitialState, // initial state
- LPCTSTR lpName // object name
- );
bManualReset:为 FALSE,表示这个 event 将在变成激发状态之后,自动重置为非激发状态。
bManualReset:为 TRUE ,表示不会自动重置,必须靠程序操作(ResetEvent( ))才能将激发状态重置为非激发状态。
bInitialState: 为 FALSE,表示这个 event 一开始处于激发状态,如果为TRUE,表示这个event 一开始处于激发状态。
lpName: event 对象的名称。
- //把 event 对象设为激发状态
- BOOL SetEvent(
- HANDLE hEvent // handle to event
- );
- //把 event 对象设为非激发状态
- BOOL ResetEvent(
- HANDLE hEvent // handle to event
- );
- //如果是 Manual Reset Event:
- //把 event 对象设为激发状态,唤醒"所有"等待中的线程,然后 event 恢复为非激发状态。
- //如果是 Auto Reset Event:
- //把 event 对象设为激发状态,唤醒"一个"等待中的线程,然后 event 恢复为非激发状态。
- BOOL PulseEvent(
- HANDLE hEvent // handle to event object
- );
0 0
- 线程同步----事作(Event)
- 线程同步----事作(Event)
- 使用Event同步线程
- 线程同步:Event类
- 线程同步-event机制
- 线程同步之EVENT
- 线程同步--事件Event
- 经典线程同步 事件Event
- 经典线程同步 事件Event
- 线程同步:CRITICAL_SECTION, Mutex , Event
- 事件Event:简单的线程同步
- Windows线程(使用Event同步)
- 事件Event:简单的线程同步【转】
- 事件Event:简单的线程同步
- 使用Event同步线程的小例子
- 多线程6:经典线程同步 事件Event
- 多线程第四篇:event线程同步
- C++ 经典线程同步 事件Event(九)
- FILE文件储存
- 字符串b在字符串a中出现的次数
- 深入浅出Java垃圾回收机制
- iOS 8 Extensions
- 升级10.10 Yosemite 后,cocoapods 出现错误解决方案
- 线程同步----事作(Event)
- 对国产的程序员印象不好,是因为你处在不好的环境中
- js禁用页面上的部分功能
- RevitAPI: 如何获取图纸中视口的位置
- AFNetWorking的使用
- 关于怎么用Xamarin来将JS通知转换成手机系统通知的问题
- [python]python装饰器
- 黑马程序员——网络编程
- 第三章第三题