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

履歴 編集

function
<thread>

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

[[nodiscard]] stop_token get_stop_token() const noexcept;

概要

停止状態を問い合わせるためのstop_tokenオブジェクトを取得する。

戻り値

メンバ変数として保持しているstop_source型オブジェクトssourceがあるとして、以下と等価:

return ssource.get_token();

例外

送出しない。

#include <iostream>
#include <cassert>
#include <thread>

int main()
{
  std::jthread t {
    [](std::stop_token stoken) {
      while (!stoken.stop_requested()) {}
      std::cout << "exit thread" << std::endl;
    }
  };

  t.request_stop();

  // 停止要求が正しく発行されたか調べる
  assert(t.get_stop_token().stop_requested());
}

出力

exit t thread

バージョン

言語

  • C++20

処理系