命名空间
变体
操作

std::jthread::~jthread

来自 cppreference.cn
< cpp‎ | thread‎ | jthread
 
 
并发支持库
线程
(C++11)
(C++20)
this_thread 命名空间
(C++11)
(C++11)
(C++11)
协同取消
互斥
(C++11)
通用锁管理
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
条件变量
(C++11)
信号量
闩锁和栅栏
(C++20)
(C++20)
期物
(C++11)
(C++11)
(C++11)
(C++11)
安全回收
(C++26)
危害指针
原子类型
(C++11)
(C++20)
原子类型的初始化
(C++11)(C++20 中已弃用)
(C++11)(C++20 中已弃用)
内存顺序
(C++11)(C++26 中已弃用)
原子操作的自由函数
原子标志的自由函数
 
 
~jthread();
(自 C++20 起)

销毁 jthread 对象。

如果 *this 具有关联的线程 (joinable() == true),则调用 request_stop() 然后调用 join()

[编辑] 注意

request_stop() 如果 jthread 之前已被请求停止,则无效。

在以下情况下,jthread 对象不具有关联的线程

  • 它是默认构造的。
  • 它已从其移动。
  • join() 已被调用。
  • detach() 已被调用。

如果 join() 抛出异常(例如,因为检测到死锁),则可能调用 std::terminate()

[编辑] 示例

[编辑] 参见

析构线程对象,底层线程必须被连接或分离
(std::thread 的公共成员函数) [编辑]