當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


C++ Thread joinable用法及代碼示例


描述

它返回線程對象是否可連接。

聲明

以下是 std::thread::joinable 函數的聲明。

bool joinable() const noexcept;

C++11

bool joinable() const noexcept;

參數

返回值

如果線程可連接,則返回 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

相關用法


注:本文由純淨天空篩選整理自 C++ Thread Library - Function joinable。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。