C++ Thread 库 - Function joinable
描述
它返回线程对象是否可连接。
声明
以下是 std::thread::joinable 函数的声明。
bool joinable() const noexcept;
C++11
bool joinable() const noexcept;
参数
none
返回值
如果线程可连接,则返回 true,否则返回 false。
异常
No-throw guarantee − 从不抛出异常。
数据竞争
对象被访问。
示例
在下面的 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