| 对象 | 何时处于未通知状态 | 何时处于已通知状态 | 成功等待的副作用 |
| 进程 | 当进程仍然活动时 | 当进程终止运行时(ExitProcess,TerminateProcess) | 无 |
| 线程 | 当线程仍然活动时 | 当线程终止运行时(ExitThread,TerminateThread) | 无 |
| 作业 | 当作业的时间尚未结束时 | 当作业的时间已经结束时 | 无 |
| 文件 | 当I / O请求正在处理时 | 当I / O请求处理完毕时 | 无 |
| 控制台输入 | 不存在任何输入 | 当存在输入时 | 无 |
| 文件修改通知 | 没有任何文件被修改 | 当文件系统发现修改时 | 重置通知 |
| 自动重置事件 | ResetEvent,Pulse-Event或等待成功 | 当调用SetEvent/Puls Event时 | 重置事件 |
| 人工重置事件 | ResetEvent或PulseEvent | 当调用SetEvent/PulseEvent时 | 无 |
| 自动重置等待定时器 | CancelWaitableTimer或等待成功 | 当时间到时(SetWaitableTime r) | 重置定时器 |
| 人工重置等待定时器 | CancelWaitableTimer | 当时间到时(SetWaitableTimer) | 无 |
| 信标 | 等待成功 | 当数量> 0时(ReleaseSe maphore) | 数量递减1 |
| 互斥对象 | 等待成功 | 当未被线程拥有时(R e l e a s e互斥对象) | 将所有权赋予线程 |
| 关键代码段(用户方式) | 等待成功((Try)EnterCr iticalSection) | 当未被线程拥有时(LeaveCriticalSection) | 将所有权赋予线程 |
-【内核对象线程同步】线程同步对象速查表
最新推荐文章于 2021-04-24 13:25:40 发布
本文详细阐述了不同对象(如进程、线程等)在何种情况下会处于未通知和已通知的状态,以及等待操作可能产生的副作用。对于理解操作系统中同步与等待机制非常有用。
749

被折叠的 条评论
为什么被折叠?



