应该添加哪个头文件以在Linux上使用C ++中的线程

时间:2014-06-01 20:35:35

标签: c++ linux multithreading

我知道C ++支持线程。 在Windows平台上,使用#include <thread>可以正常工作。

#includes <thread>是否可以在Linux上运行,还是应该使用一些不同的头文件?

3 个答案:

答案 0 :(得分:5)

#include <thread>是标准C ++库的一部分。这意味着 应该在您使用它的任何平台上表现相同。

答案 1 :(得分:1)

由于<thread>是标准标题(即由C ++标准提供),因此它是包含在每个平台上的正确标题。

答案 2 :(得分:1)

这取决于您使用的C ++版本。不久,它归结为你正在使用的编译器版本(我想是gcc / g ++)。

就我所关注的C ++而言,x11线程已经内置到标准库中(我认为如果你使用线程头是alredy你使用的是最新的C ++标准,至少在Windows上)所以你可能只应该检查一下Linux C ++编译器支持它。如果没有,你可以尝试升级它。

但是如果您在语言上使用旧版本,则需要使用平台依赖的库和标头。对于Linux,它将是pthread #include <pthread.h>。如果您被迫使用旧版本的语言,您还可以查看Boost库,它们抽象出线程并暴露统一的接口。示例here