C++ 使用boost::threads传递消息?
boost是否有某种方法可以使消息跨多个线程传递 我正在开发一个服务器应用程序,我希望能够以安全的方式在整个应用程序中传递消息C++ 使用boost::threads传递消息?,c++,boost,C++,Boost,boost是否有某种方法可以使消息跨多个线程传递 我正在开发一个服务器应用程序,我希望能够以安全的方式在整个应用程序中传递消息 谢谢boost::thread提供了您需要的工具,这里有一个示例队列实现,应该可以帮助您开始 这也给了我另一个机会,插入这本书 C++并发操作是新C++ 11的参考和指南 有经验的C++程序员以及那些有经验的程序员的标准 从未编写过多线程代码。这本书将教你如何写作 C++中的多线程鲁棒性应用程序 陷阱 如果你使用Windows,Visual C++ 10在这里有一些专
谢谢
boost::thread
提供了您需要的工具,这里有一个示例队列实现,应该可以帮助您开始
这也给了我另一个机会,插入这本书
C++并发操作是新C++ 11的参考和指南 有经验的C++程序员以及那些有经验的程序员的标准 从未编写过多线程代码。这本书将教你如何写作 C++中的多线程鲁棒性应用程序 陷阱
如果你使用Windows,Visual C++ 10在这里有一些专有工具。VC11对此进行了扩展。
boost::thread
提供了您将需要的工具,并且有一个示例队列实现可以帮助您开始
这也给了我另一个机会,插入这本书
C++并发操作是新C++ 11的参考和指南 有经验的C++程序员以及那些有经验的程序员的标准 从未编写过多线程代码。这本书将教你如何写作 C++中的多线程鲁棒性应用程序 陷阱
如果你使用Windows,Visual C++ 10在这里有一些专有工具。VC11对此进行了扩展。
您也可以使用Boost.Asio实现此目的:在一个线程中运行io_服务,并从另一个线程调用io_服务.post(您的函子)。您也可以使用Boost.Asio实现此目的:在一个线程中运行io_服务,从另一个线程调用io_服务.post(您的函子)。它已经发布。谢谢@Jerry,也是时候了:-)+1感谢我所寻找的。我在链接的帖子中发表了评论,但我想我也会在这里发表评论:为了在C++11中使用unique\u ptr
s队列,我在这里添加了push
的右值引用重载(见下一条评论)。看看右边,还有什么需要的吗?void push(Data&&Data){boost::mutex::scoped_lock lock(the_mutex);the_queue.push(std::move(Data));lock.unlock();the_condition_variable.notify_one();}忘了提到——此外,移动语义需要应用于各种pop
方法。它已经发布了。谢谢@Jerry,也是时候了:-)+1感谢我所寻找的。我在链接的帖子中发表了评论,但我想我也会在这里发表评论:为了在C++11中使用unique\u ptr
s队列,我在这里添加了push
的右值引用重载(见下一条评论)。看看右边,还有什么需要的吗?void push(Data&&Data){boost::mutex::scoped_lock lock(the_mutex);the_queue.push(std::move(Data));lock.unlock();the_condition_variable.notify_one();}忘了提到——此外,移动语义需要应用于各种pop
方法。