最終更新日時(UTC):
が更新

履歴 編集

type-alias
<thread>

std::jthread::id(C++20)

namespace std {
  class jthread {
  public:
    using id = thread::id;
  };
}

概要

スレッド識別子。std::thread::idの別名。

実行のスレッドに対して一意なthread::idが対応づけられる。デフォルト構築されたidはいかなるスレッドとも対応付けられない(ポインタ型におけるnullptrのようなもの)。

終了したスレッドを表す識別子の値は、再利用される可能性がある。

#include <iostream>
#include <thread>

int main()
{
  std::jthread {[]{
    const std::jthread::id background_tid = std::this_thread::get_id();
    std::cout << "background=" << background_tid << std::endl;
  }};

  const std::jthread::id main_tid = std::this_thread::get_id();
  std::cout << "main=" << main_tid << std::endl;
}

出力例

background=140029246985984
main=140029246990144

バージョン

言語

  • C++20

処理系