- 2
- 0
- 约5.06千字
- 约 7页
- 2018-03-29 发布于河南
- 举报
线程中CreateEvent和SetEvent及WaitForSingleObject的用法
线程中CreateEvent和SetEvent及WaitForSingleObject的用法
首先介绍CreateEvent是创建windows事件的意思,作用主要用在判断线程退出,程锁定方面.
CreateEvent
函功能描述:创建或打开一个命名的或无名的事件对象.
EVENT有两种状态:发信号,不发信号。
SetEvent/ResetEvent分别将EVENT置为这两种状态分别是发信号与不发信号。
WaitForSingleObject()等待,直到参数所指定的OBJECT成为发信号状态时才返回,OBJECT可以是EVENT,也可以是其它内核对象。
当你创建一个线程时,其实那个线程是一个循环,不像上面那样只运行一次的。这样就带来了一个问题,在那个死循环里要找到合适的条件退出那个死循环,那么是怎么样实现它的呢?在Windows里往往是采用事件的方式,当然还可以采用其它的方式。在这里先介绍采用事件的方式来通知从线程运行函数退出来,它的实现原理是这样,在那个死循环里不断地使用WaitForSingleObject函数来检查事件是否满足,如果满足就退出线程,不满足就继续运行。当在线程里运行阻塞的函数时,就需要在退出线程时,先要把阻塞状态变成非阻塞状态,比如使用一个线程去接收网络数据,同时使用阻塞的SOCKET时,那么要先关闭SOCKET,再发送事件信号,才可以退出线程的。
当
您可能关注的文档
最近下载
- 基于STM32的智能语音助手.doc VIP
- 2025年乳制品工业产业政策(〔009年修订.docx VIP
- 如何编制高质量的招标工程量清单与招标控制价.doc VIP
- 31、《做最勇敢的自己》.pptx VIP
- 2025年江苏省苏州工业园区初三一模化学试题及答案.pdf VIP
- 江苏省南通市如皋市2024-2025学年高一下学期教学质量调研(二)数学试题.pdf VIP
- 2025年湖北省工程技术职务水平能力测试(土地管理)历年参考题库含答案详解.docx VIP
- 水电运维管理员考试题库.docx VIP
- 武汉市武昌区2025-2026学年第二学期五年级语文期中考试卷(部编版含答案).docx VIP
- 反谐振空芯光纤:理论、仿真与制备的深度剖析.docx VIP
原创力文档

文档评论(0)