c++ 学习之 多线程(一)thread对象的创建
前言
在之前的c++标准中,并没有提供对于多线程的支持,所以在应用中的开发需就要依赖操作系统提供的多线程接口,或者应用第三方的多线程库。这样一来,代码的移植性和开发的成本就存在了问题。c++ 11 标准提供了多线程的支持,增加的多线程代码的可移植性,大大降低了开发成本,以前依赖于平台或操作系统来开发多线程,现在有了统一致的实现。
正文
那么通过什么来创建一个线程呢?我们将引入thread 类,thread类在头文件<thread> 中。先来介绍一下thread类的构造函数。
1.默认构造函数
先来看一下官方给出的说法:
大概意思是,默认构造函数构造了一个thread对象,但是这个对象不代表任何一个线程的执行。也就是只是单纯的构造了一个类对象而已。
#include<thread>
int main()
{
std::thread t();
return 0;
}
可以看到,我们没有调用thread的成员函数join 或者 detac