首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >事件触发的windows窗体上的信号量等待

事件触发的windows窗体上的信号量等待
EN

Stack Overflow用户
提问于 2013-01-21 17:09:20
回答 1查看 357关注 0票数 0

我已经实现了一个缓冲区。缓冲区有两个属性read和write。read函数调用等待read_slot信号量可用。write函数调用等待write_slot。将write_slot信号量安装到初始计数100和最大计数100,而将读取槽初始化为初始计数0和最大计数100。

所以我触发了一个事件来写缓冲区-->减少写槽-->增加读槽。该事件有时会触发得非常快。读操作降低了read_slot并增加了write_slot。因此,此体系结构不会遇到死锁-->因为只有当read_slot为0且write_slot为0时才会发生死锁...这是不可能的,因为槽在公共互斥锁内增加和减少。

然而,我仍然面临着一个僵局。有没有人知道事件触发系统的功能。

EN

回答 1

Stack Overflow用户

发布于 2013-01-21 17:33:12

代码语言:javascript
复制
  The event is fired very fast sometimes.

为什么不使用生产者-消费者模式呢?显然,你不能不写就读(读操作应该在写操作之后发生)。您可以通过BlockingCollections在.Net中轻松实现这一点。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14435401

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档