join
#include <iostream>
#include <thread>
using namespace std;
void myPrint()
{
cout << "我的线程开始运行" << endl;
cout << "我的线程运行完毕" << endl;
return;
}
int main()
{
thread myThread(myPrint);
myThread.join();
if (myThread.joinable())
{
cout << "可以调用可以调用join()或者detach()" << endl;
}
else
{
cout << "不能调用可以调用join()或者detach()" << endl;
}
cout << "Hello World!" << endl;
return 0;
}
datach
#include <iostream>
#include <thread>
using namespace std;
class A {
public:
void operator ()() {
cout << "子线程执行1" << endl;
cout << "子线程执行2" << endl;
cout << "子线程执行3" << endl;
cout << "子线程执行4" << endl;
cout << "子线程执行5" << endl;
}
};
int main()
{
A a;
thread myThread(a);
myThread.detach();
cout << "Hello World!" << endl;
return 0;
}