我正在寻找类似于 Win32 世界中的 CreateEvent()、SetEvent() 和 WaitForMultipleObjects() 的东西。
具体来说,这必须可以在同一台机器上跨进程访问。
我们已经将 Poco 用于一些跨平台的东西,但我没有看到 Poco::Event 是我想要的。也许我遗漏了什么。
编辑:
解释我想做什么:
我希望进程 B 知道进程 A 何时发生某些事情。这在 win32 中是微不足道的 - 每个进程/线程调用 CreateEvent() 并为事件命名。当发生某些事情时,进程 B 调用 waitForXObject() 并且进程 A 调用 SetEvent() 。 B 发出信号。
同样,这在 win32 中很简单,但如何跨平台进行。
最佳答案
C++ 中没有内置的方法来处理命名事件。但是你可以使用 boost 来做到这一点。
您正在寻找 boost::condition和 boost::named_condition
正如您还提到的,存在:Poco.NamedEvent
关于c++ - Win32中是否有C++跨平台 "named event like the "CreateEvent()”?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2664913/