从睡眠中唤醒一个线程来响应一个事件

本文关键字:一个 响应 事件 睡眠中 唤醒 线程 | 更新日期: 2023-09-27 18:13:26

假设我有3个线程A, B和C

A启动B,而C是一个独立的线程,与A或B都没有关系,所以现在A调用B做一些工作,然后休眠,等待B或C的信号唤醒并开始再次工作。

如何在c#中实现这个跨线程事件处理?

从睡眠中唤醒一个线程来响应一个事件

使用ManualResetEventAutoResetEvent(基于您想要的特定语义;如果没有更多的信息,很难说哪个更合适)。创建适当的事件对象,并与所有三个线程共享。让线程A等待事件。然后BC都可以设置事件来唤醒线程A

相关文章: