繁体   English   中英

PulseEvent() 函数的 C 实现

[英]C implementation of PulseEvent() function

我需要为手动重置事件编写 PulseEvent 的 C 代码实现。 因此,此函数必须释放所有等待的线程,然后重置事件。 我只能将信号量和互斥体与它们的 Windows 函数(CreateSemaphore、CreateMutex、ReleaseSemaphore、ReleaseMutex)一起使用,我必须在大学考试中这样做,所以我没有任何支持信息。

我想近似模拟是让所有线程进入互斥锁。 如果一个线程带着等待请求进入,创建一个信号量,将它存储在一个容器中,退出互斥锁并等待信号量。

如果线程通过脉冲请求进入互斥锁,则向容器中的所有信号量发出信号,清空容器,(不,不要关闭处理信号量),然后退出互斥锁。

释放的线程应该在继续运行之前关闭它们正在等待的信号量。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM