VSCode C++ - #include <thread>

VSCode C++ - #include <thread>

本文关键字:thread gt C++ lt #include VSCode      更新时间:2023-10-16

我使用的是带有C++扩展名和g++的Visual Studio代码作为编译器。我正在尝试为线程配置我的环境,但运气不太好。我尝试通过MinGW安装程序安装POSIX线程,但我真的不确定如何在我的项目中正确地包含它或包含路径。

#include <string>
#include <iostream>
#include <thread>
void task1(string msg){
cout << "task1 says: " << msg;
}
int main(){
std::thread t1(task1, "Hello");
t1.join();
}

在这种情况下,#include不是错误,但std::thread是未定义的。

c_cpp_properties.json:

{
"name": "Win32",
"intelliSenseMode": "clang-x64",
"includePath": [
"${workspaceRoot}",
"C:/MinGW/lib/gcc/mingw32/6.3.0/include/c++",
"C:/MinGW/lib/gcc/mingw32/6.3.0/include/c++/mingw32",
"C:/MinGW/lib/gcc/mingw32/6.3.0/include/c++/backward",
"C:/MinGW/lib/gcc/mingw32/6.3.0/include",
"C:/MinGW/include",
"C:/MinGW/lib/gcc/mingw32/6.3.0/include-fixed"
],
"defines": [
"_DEBUG",
"UNICODE",
"__GNUC__=6",
"__cdecl=__attribute__((__cdecl__))",
"__SIZE_TYPE__=long long unsigned int"
],
"browse": {
"path": [
"C:/MinGW/lib/gcc/mingw32/6.3.0/include",
"C:/MinGW/lib/gcc/mingw32/6.3.0/include-fixed",
"C:/MinGW/include/*"
],
"limitSymbolsToIncludedHeaders": true,
"databaseFilename": ""
},
"cStandard": "c11",
"cppStandard": "c++17"
}

发现线程实际上并不受支持。。。

#include <thread>

但是POSIX线程是这样的,所以我最终使用了它们:

#include <pthread.h>