c++ - Poco C++ 事件是如何处理的?

标签 c++ multithreading event-handling delegates poco

假设我有一个 Poco::Thread: Thread Parent 中有一个 eventhandler 方法。
然后,父线程生成两个子线程,这些子线程获得父订阅事件处理程序的事件。
所以两个事件都附加了相同的事件处理程序。
如果 Child A 触发了他们的事件,而 Parent 开始执行它,如果 Child B 在 Parent 完成之前触发了他们的事件会发生什么?
这些请求是自动排队的,还是我必须自己锁定所有内容?

最佳答案

事件委托(delegate)在调用者的线程内调用(除非您使用 notifyAsync()),因此在多个线程触发同一事件的情况下,您必须自己处理事件处理程序中的同步。

关于c++ - Poco C++ 事件是如何处理的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3291521/

相关文章:

c++ - QThread : Destroyed while thread is still running in QTest

python - ThreadPoolExecutor 作为迭代而不是线程运行

c++ - 在信号处理程序中使用互斥体

android - 如何停止一个线程?

java - 生成事件、Swing

c++ - 在 C++ 中使用引用和指针有什么意义?

c++ - 链接列表中的频率

c# - ASP.NET ImageButton Onclick 事件未处理

jquery - 使用 jQuery 标准化 CodeMirror OnKeyEvent

c++ - glfw 在 vi​​sual studio 2017 上一打开就关闭