c++ - Win32中是否有C++跨平台 "named event like the "CreateEvent()”?

标签 c++ events cross-platform signals

我正在寻找类似于 Win32 世界中的 CreateEvent()、SetEvent() 和 WaitForMultipleObjects() 的东西。

具体来说,这必须可以在同一台机器上跨进程访问。

我们已经将 Poco 用于一些跨平台的东西,但我没有看到 Poco::Event 是我想要的。也许我遗漏了什么。

编辑:

解释我想做什么:

我希望进程 B 知道进程 A 何时发生某些事情。这在 win32 中是微不足道的 - 每个进程/线程调用 CreateEvent() 并为事件命名。当发生某些事情时,进程 B 调用 waitForXObject() 并且进程 A 调用 SetEvent() 。 B 发出信号。

同样,这在 win32 中很简单,但如何跨平台进行。

最佳答案

C++ 中没有内置的方法来处理命名事件。但是你可以使用 boost 来做到这一点。

您正在寻找 boost::conditionboost::named_condition

正如您还提到的,存在:Poco.NamedEvent

关于c++ - Win32中是否有C++跨平台 "named event like the "CreateEvent()”?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2664913/

相关文章:

c++ - 用于访问和设置值的重载 [] 运算符 (C++)

c++ - 如何使用 C++14 和 C++1z 中的功能缩短此可变参数模板代码?

c++ - 那是内存泄漏吗?

node.js - 为什么会错误地销毁流?

c++ - 有没有办法自动使库成为静态或动态的?

linux - 如何为busybox中的每个小程序构建ELF文件?

c++ - 如何编写 std::codecvt 方面?

c - 在 X11 上拦截 WM_DELETE_WINDOW?

c# - 使用 SQLITE/SQL COMPACT 数据库的跨平台 C# 应用程序

java - 使用全局 Hook 从条形码扫描仪读取数据