#include <iostream>
#include <thread>
void do_something() {
std::cout << "Detached thread is running\n";
}
int main() {
// 创建一个线程并使用 detach 使其独立运行
std::thread t(do_something);
t.detach();
// 主线程继续执行
std::cout << "Main thread is running\n";
// 主线程不会等待 detached 线程结束
return 0;
}
std::thread t(do_something);
:创建一个新的线程,该线程执行 do_something
函数。t.detach();
:调用 detach()
方法使线程脱离主线程的控制,允许它独立运行。脱离后,主线程不会等待该线程结束。std::cout << "Main thread is running\n";
:主线程继续执行,并输出信息。detach()
时要小心,因为脱离的线程可能会在程序结束前没有完成其任务,导致资源泄露或未定义行为。上一篇:c++运算优先级
下一篇:c++ std::cout
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站