C++ 多线程
C++ 多线程
1.线程
1.库<Thread>
2.对象std::thread
在对象创建时,线程就开始执行,使用join或detach来确认主线程和子线程之间的关系。
-
thread()
- 默认构造函数
- 创建一个线程,什么都不做
-
template<class Fn, class … Arg> thread(Fn && fn,Args && … args)
- 初始化构造函数
- 创建一个线程,以args为参数,执行fn函数
3.常用成员函数
-
void join()
- 阻塞等待线程结束并清理资源
-
void detach()
- 将线程与调用其的线程分离,彼此独立执行
- 注意:如果需要该函数,必须在线程被创建时立刻调用。
-
bool joinable()
- 返回线程是否能执行join函数
- 当线程执行过join或者detach,则不能再次被执行
-
std:🧵:id get_id()
- 获取线程id
发布于