1

boost 是否有某种方法可以使消息跨多个线程传递?

我正在开发一个服务器应用程序,我希望能够以安全的方式在整个应用程序中传递消息。

谢谢

4

2 回答 2

3

您也可以为此目的使用 Boost.Asio:在一个线程中运行 io_service,并从另一个线程调用 io_service_.post(yourFunctor)。

于 2012-05-10T14:22:33.890 回答
2

boost::thread提供了您需要的工具,这里有一个示例队列实现可以帮助您入门。

这也给了我另一个机会来插入这本书。

C++ Concurrency in Action 是新的 C++ 11 标准的参考和指南,适用于有经验的 C++ 程序员以及从未编写过多线程代码的人。本书将向您展示如何用 C++ 编写健壮的多线程应用程序,同时避免许多常见的陷阱。

如果您使用的是 Windows,则 Visual C++ 10 在Concurrency Runtime中有一些使用的专有工具。VC11 对此进行了扩展。

于 2012-05-10T14:16:24.937 回答