std::thread detach实例
时间: 2023-06-23 12:02:58 浏览: 99
thread-examples-cpp:std :: thread用法的C ++示例
以下是一个使用`detach()`函数的简单示例:
```c++
#include <iostream>
#include <thread>
void myFunction() {
std::cout << "Thread is running!" << std::endl;
}
int main() {
std::thread myThread(myFunction);
myThread.detach();
if (myThread.joinable()) {
std::cout << "Thread is joinable!" << std::endl;
} else {
std::cout << "Thread is not joinable!" << std::endl;
}
return 0;
}
```
在上面的示例中,我们创建了一个名为`myThread`的线程,并使用`detach()`函数将该线程与主线程分离。由于线程已经被分离,因此`joinable()`函数返回false,输出"Thread is not joinable!"。注意,一旦一个线程被分离,就不能再次被join。因此,在使用`detach()`函数时需要谨慎,确保线程能够独立运行,不会对其他线程产生影响。
阅读全文