首页
社区
课程
招聘
[求助]关于同步事件
2015-9-18 21:43 3021

[求助]关于同步事件

2015-9-18 21:43
3021
现在在看WINDOWS内核安全与驱动开发,看到使用同步事件这里。
    VOID KeInitlizeEvent(IN PRKEVENT Event,IN EVENT_TYPE Type,IN BOOLEAN State);
    书上两个地方对这个东西的描述不一样,让我感到很迷惑,书上的原话是:
    1:由于在KeInitializeEvent中使用了SynchronizationEvent,导致这个事件成为所谓的“自动重设”事件。一个事件如果被设置,那么所有KeWaitForSingleObject等待这个事件的地方都会通过。
    2:如果这个事件被初始化时是SynchronizationEvent事件,那么只有一个线程的KeWaitForSingleObject可以通过,通过之后被重设,其他的线程就只能继续等待了。
     到底是哪个正确,如果是第二个,那么如果同时有几个线程都在等待的话,我怎么才能知道设置了事件后哪个线程会通过呢?
    谢谢大家!!

阿里云助力开发者!2核2G 3M带宽不限流量!6.18限时价,开 发者可享99元/年,续费同价!

收藏
点赞0
打赏
分享
最新回复 (3)
雪    币: 16
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
大狮兄 2015-9-20 20:18
2
0
有哪位朋友可以帮忙解惑下吗?
雪    币: 5450
活跃值: (1380)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
浙江螃蟹 2015-9-20 21:37
3
0
这种东西,感觉自己写个代码测试一下就知道了。
雪    币: 16
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
大狮兄 2015-9-20 21:46
4
0
朋友,这个东西不好测试啊,到底是放行哪一个线程,不知道该从何入手测试
游客
登录 | 注册 方可回帖
返回