C++ 线程库 - 函数 joinable



描述

它返回线程对象是否可连接。

声明

以下是 std::thread::joinable 函数的声明。

bool joinable() const noexcept;

C++11

bool joinable() const noexcept;

参数

返回值

如果线程可连接则返回 true,否则返回 false。

异常

不抛出保证 - 从不抛出异常。

数据竞争

访问对象。

示例

在以下 std::thread::joinable 示例中。

#include <iostream>
#include <thread>
#include <chrono>
 
void foo() {
   std::this_thread::sleep_for(std::chrono::seconds(2));
}
 
int main() {
   std::thread t;
   std::cout << "before joinable: " << t.joinable() << '\n';

   t = std::thread(foo);
   std::cout << "after joinable: " << t.joinable() << '\n';

   t.join();
   std::cout << "after joining, joinable: " << t.joinable() << '\n';
}

输出应如下所示:

before joinable: 0
after joinable: 1
after joining, joinable: 0
thread.htm
广告