<thread>

public member type
<thread>

std::thread::id

class thread::id;
Thread id
此类型的值由 thread::get_idthis_thread::get_id 返回,用于标识线程。

默认构造thread::id 对象的值标识可连接线程,因此与此类线程的成员 thread::get_id 返回的值相等。

对于可连接线程thread::get_id 返回此类型的唯一值,该值不等于为任何其他可连接可连接线程返回的值。

请注意,某些库实现可能会重用已终止的、不再可连接的线程的 thread::id 值。

成员函数

id() noexcept; //默认构造函数
构造代表所有可连接线程的 thread::id 值。
thread::id 对象是平凡可复制的。

非成员函数重载

bool operator== (thread::id lhs, thread::id rhs) noexcept;
bool operator!= (thread::id lhs, thread::id rhs) noexcept;
bool operator< (thread::id lhs, thread::id rhs) noexcept;
bool operator<= (thread::id lhs, thread::id rhs) noexcept;
bool operator> (thread::id lhs, thread::id rhs) noexcept;
bool operator>= (thread::id lhs, thread::id rhs) noexcept;
两个 thread::id 对象相等,当且仅当它们表示同一个可连接线程,或者它们都表示可连接线程。
关系运算符建立的顺序是实现定义的稳定全序,允许其用作关联容器的键。
template <class charT, class traits>
basic_ostream<charT, traits>& operator<< (basic_ostream<charT,traits>& os, thread::id id);
id 的文本表示形式(以实现特定的方式)插入到 os 中。
插入两个相等比较的 thread::id 对象会生成相同的文本表示。插入不同的 thread::id 值会生成不同的表示。

非成员类特化

template <class T> struct hash; //通用模板声明
template<> struct hash<thread::id>;
一元函数对象类,定义了 hashthread::id 类型对象的特化(参见 hash)。

另见