thread 是C++ 11 引入的
使用的时候需要引入头文件 #include<thread>
头文件中主要包含两个内容:std:thread类和std:this_thread命名空间。
函数名 功能
thread() 构造一个线程对象,没有关联任何线程函数,即没有启动任何线程
thread(fn,args1, args2,...) 构造一个线程对象,并关联线程函数fn,args1,args2,...为线程函数的
参数
get_id() 获取线程id
joinable() 线程是否还在执行,joinable代表的是一个正在执行中的线程。
join() 该函数调用后会阻塞住线程,当该线程结束后,主线程继续执行
detach() 在创建线程对象后马上调用,用于把被创建线程与线程对象分离开,分离
的线程变为后台线程,创建的线程的"死活"就与主线程无关
下面写一个demo
#include <iostream>
using namespace std;
#include <thread>
void t1(){for(int i=0;i<6;i++){cout<<"Thread f1"<<endl;}
};void t2(int x){for(int i=0;i<x;i++){cout<<"Thread f2"<<endl;}
};int main()
{ thread f1(t1);thread f2(t2,5);f1.join();f2.join();
}