社区
进程/线程/DLL
帖子详情
SetEvent,WaitForSingleObject这几个函数什么意思啊?
Mars531
2004-11-25 09:57:04
这几个函数一般用于什么场合,能给个简单的例子吗?
...全文
509
7
打赏
收藏
SetEvent,WaitForSingleObject这几个函数什么意思啊?
这几个函数一般用于什么场合,能给个简单的例子吗?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Gdlian
2004-12-15
打赏
举报
回复
分都让人抢光啦
这两个函数基本上用于线程同步控制。如果你对消息机制了解的话。
这两个函数也不难理解
zengwujun
2004-12-15
打赏
举报
回复
SetEvent(HANDLE hEvent)它的参数是一个内核对象,而内核对象是可以进程共享的,因此它可以用于进程间的同步;
而EnterCriticalSection是用于临界区的保护,它会对临界区中的变量进行保护,其他线程试图访问临界区中的变量时会被挂起等待,所以这个函数容易导致死锁的发生。
EnterCriticalSection是运行在用户态上的,对它的调用只需要几十个cpu周期,SetEvent会从用户态切换到内核态(因为使用了内核对象),所以它的耗时多达上1000的cpu周期。
以上就是他们两个函数的区别。
handwolf
2004-11-26
打赏
举报
回复
读写文件要异步进行的例子!
HANDL hForRead;
HANDl hForWrite;
初始化
SetEvent(hForRead);//先写后读
读进程
while(1)
{
WaitForSingleObject(hForRead,INFINTE);//等待hForRead事件直到发生
ResetEvent(hForWrite);//重新设置hForWrite事件到未发生状态
...写数据
SetEvent(hForWrite);//设置hForWrite事件为生状态
}
写进程
while(1)
{
WaitForSingleObject(hForWrite,INFINTE);//等待hForWrite事件直到发生
ResetEvent(hForRead);//重新设置hForRead事件到未发生状态
...读数据
SetEvent(hForRead);//设置hForRead事件为生状态
}
hchinside
2004-11-26
打赏
举报
回复
这种问题,看书吧。在这里谁能讲清楚。
Kudeet
2004-11-26
打赏
举报
回复
SetEvent()函数用来把事件对象设置成信号状态,需事件对象句柄作参数。critical不能用于进程间的同步控制,而EVENT可以。
Mars531
2004-11-25
打赏
举报
回复
SetEvent和VC里的EnterCriticalSection作用有什么异同,critical用于临界区保护,也可以用于线程同步,与event有什么区别?
Kudeet
2004-11-25
打赏
举报
回复
一般都用于同步控制
Threads in MFC Part II: Synchronization Objects
http://www.devhood.com/tutorials/tutorial_details.aspx?tutorial_id=439
测量Win32的
Set
Event
函数
及等待
函数
Wait
For
Single
Object
的延时数据
因为经常用到
Set
Event
和
Wait
For
Single
Object
函数
组合,来实现事件触发,觉得非常好用,但一直很好奇,这些
函数
的执行效率如何?或者说,当执行了一个
Set
Event
触发,大概需要多长时间,
Wait
For
Single
Object
才会响应,...
Wait
For
Single
Object
函数
的诸多用途与使用场景总结
Wait
For
Single
Object
函数
的诸多用途与使用场景总结
【C++】
Wait
For
Single
Object
函数
的使用&&
Wait
For
Single
Object
和C
Event
用法
Wait
For
Single
Object
当指定的对象处于有信号状态或者等待时间结束的状态时,此
函数
返回。 DWORD
Wait
For
Single
Object
( HANDLE hHandle, DWORD dwMilliseconds ); 参数: hHandle:指定对象或事件的...
Wait
For
Single
Object
函数
用法
但是,用户模式的线程同步有限制,对于多个进程之间的线程同步,用户模式的线程同步方法无能为力。这时,只能考虑使用内核模式。 Windows提供了许多内核对象来实现线程的同步。对于线程同步而言,这些内核对象...
linux系统c语言
set
event
函数
,Windows同步对象
Event
和Linux的条件变量
1 Windows同步对象
Event
微软有一个很有意思的同步对象,某种程度上和Linux的条件变量很相似。但秉承微软一贯的作风,有些地方设计的又有点怪异。
Event
通过
函数
CreateMutex创建,可以分为手动模式和自动模式两种模式...
进程/线程/DLL
15,471
社区成员
49,182
社区内容
发帖
与我相关
我的任务
进程/线程/DLL
VC/MFC 进程/线程/DLL
复制链接
扫一扫
分享
社区描述
VC/MFC 进程/线程/DLL
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章