课时3 线程启动结束,创建线程多法,joindetach
Posted anthony-ling
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了课时3 线程启动结束,创建线程多法,joindetach相关的知识,希望对你有一定的参考价值。
用类作为可调用对象创建线程
class A
public:
A() cout << "构造函数" << endl;
A(const A& a) cout << "拷贝构造函数" << endl;
void operator()() cout << "此时在子线程中" << endl;
~A() cout << "析构函数" << endl;
private:
;
int main(int argc, char** argv)
A a;
thread myjob(a);
myjob.join();
cout << "此时在主线程中" << endl;
return 0;
用lambda作为可调用对象创建线程
int main(int argc, char** argv)
auto f = [] cout << "lambda" << endl; ;
thread myjob(f);
//thread myjob([] cout << "lambda" << endl; );这样的使用方法也可以通过编译
myjob.join();
cout << "此时在主线程中" << endl;
return 0;
以上是关于课时3 线程启动结束,创建线程多法,joindetach的主要内容,如果未能解决你的问题,请参考以下文章
C++并发与多线程 2_线程启动结束,创建线程多种方法,join,detach
C++11多线程第二篇:线程启动结束创建线程的多个方法:joindetach