1
|
Aaron Qian · 技术社区 · 15 年前 |
![]() |
1
1
您可以使用多一点的脚手架来做您想要做的事情,但是为了在您的主线程上执行回调,主线程必须等待一些信号,这些信号表明回调已经准备好了。这是一种方法。我假设您的主线程已经有了某种形式的执行循环。
使用stl和同步对象(例如boost.thread提供的对象)可移植地构建这样的队列并不困难。另一个问题是在没有竞争的情况下将其扩展到高吞吐量,但听起来您不需要这种扩展。即使其他库也会为您完成所有这些工作,对于任何进行多线程编程的人来说,自己构建类似的东西都是一个很好的练习,特别是当涉及的一个或多个组件不可重入时。 |