0

在我当前的代码中,我使用类似的东西等待某些事件发生

WaitForMultipleObjects(2,pEvents,false,1000);

在我收到值得发布的事件时,在单独的线程中并将内容发布到状态机。我将此行为移植到 QP 中,据我所知,每个活动对象都是它自己的线程。因此,我可以在 Active 对象中的无限循环(带有一些终止中断条件)中执行此操作吗?

据我了解,QP 也在后台等待 windows 事件,是否有一个技巧来检索代表我当前活动对象队列的 windows 事件句柄并等待它,以便我的线程(活动对象)阻塞如果其他一些对象发布到我的队列,我的(非 QP)事件和事件被激活?

4

1 回答 1

0

万一有人感兴趣,我找到了我想要的东西。QActive 的成员 m_osObject 是输入队列为空时等待的事件的句柄。

请注意,我只在 QP 的 windows 端口上测试了它,据我所知,它不适用于任何其他端口。

于 2012-09-19T14:38:03.833 回答