|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Member functions | ||||
| Non-member functions | ||||
operator==operator!=operator<operator<=operator>operator>=operator<=> (until C++20)(until C++20)(until C++20)(until C++20)(until C++20)(C++20) | ||||
| Helper classes | ||||
(C++23) |
Defined in header <thread> | ||
bool operator==(std::thread::id lhs,std::thread::id rhs)noexcept; | (1) | (since C++11) |
bool operator!=(std::thread::id lhs,std::thread::id rhs)noexcept; | (2) | (since C++11) (until C++20) |
bool operator<(std::thread::id lhs,std::thread::id rhs)noexcept; | (3) | (since C++11) (until C++20) |
bool operator<=(std::thread::id lhs,std::thread::id rhs)noexcept; | (4) | (since C++11) (until C++20) |
bool operator>(std::thread::id lhs,std::thread::id rhs)noexcept; | (5) | (since C++11) (until C++20) |
bool operator>=(std::thread::id lhs,std::thread::id rhs)noexcept; | (6) | (since C++11) (until C++20) |
std::strong_ordering operator<=>(std::thread::id lhs, std::thread::id rhs)noexcept; | (7) | (since C++20) |
Compares two thread identifiers.
The | (since C++20) |
Contents |
| lhs, rhs | - | thread identifiers to compare |
Constant.
#include <cassert>#include <chrono>#include <iostream>#include <thread> int main(){auto work=[]{std::this_thread::sleep_for(std::chrono::seconds(1));};std::thread t1(work);std::thread t2(work); assert(t1.get_id()== t1.get_id() and t2.get_id()== t2.get_id() and t1.get_id()!= t2.get_id()); if(constauto cmp= t1.get_id()<=> t2.get_id(); cmp<0)std::cout<<"id1 < id2\n";elsestd::cout<<"id1 > id2\n"; std::cout<<"id1: "<< t1.get_id()<<"\n""id2: "<< t2.get_id()<<'\n'; t1.join(); t2.join();}
Possible output:
id1 > id2id1: 139741717640896id2: 139741709248192
C documentation forthrd_equal |