2012-08-25 96 views
1

我决定在C++中最近做一个游戏,我发现在C++中没有多线程支持:(有库,但它们依赖于平台,并不是很好,有什么办法可以做这个平台无关的C++?C++多线程?

+4

提升。或C++ 11。 – Wug

+2

openmp,tbb .................... –

+0

为什么不用pthread库? – 0x90

回答

10

C++ 11有内置的线程支持(如语言的一部分,以及标准库)。

http://en.wikipedia.org/wiki/C%2B%2B11#Multithreading_memory_model

http://en.wikipedia.org/wiki/C%2B%2B11#Threading_facilities

而且,boost :: thread(boost :: asio我相信)确实有问题r(或多或少)独立于平台的线程支持(并且它不是唯一提供此功能的库)。

+2

我相信[tbb](http://threadingbuildingblocks.org/)提供了更多的设施 - 比如那些并发容器 –

+0

@lzprgmr,tbb是许可证的阻碍。 –

+0

@ lucas1024不,不是。那么,它使用与GNU libstdC++相同的许可证,它等同于:链接到任何你喜欢的。 – rubenvb