【发布时间】:2020-11-17 23:40:12
【问题描述】:
我目前使用 boost::interprocess 库中的 timed_receive() 方法来接收数据。由于收到消息的时间会有所不同,我在 receive() 方法上使用了这个方法。
msgque->timed_receive((void*) &message,sizeof(int),recvd_size,priority,
boost::posix_time::ptime(microsec_clock::universal_time()) + boost::posix_time::milliseconds(300))
问题: 此方法如何知道缓冲区中存在消息?是轮询机制还是实现了更复杂的机制? 我阅读了文档并找不到任何详细信息,并且源代码也没有提供任何信息。
已经谢谢了。
【问题讨论】:
标签: c++ boost message-queue