<thread> functions
The latest version of this topic can be found at <thread> functions.
get_id | sleep_for | sleep_until |
swap | yield |
get_id Function
Uniquely identifies the current thread of execution.
thread::id this_thread::get_id() noexcept;
Return Value
An object of type thread::id that uniquely identifies the current thread of execution.
sleep_for Function
Blocks the calling thread.
template <class Rep,
class Period>
inline void sleep_for(
const chrono::duration<Rep, Period>& Rel_time);
Parameters
Rel_time
A duration object that specifies a time interval.
Remarks
The function blocks the calling thread for at least the time that's specified by Rel_time
. This function does not throw any exceptions.
sleep_until Function
Blocks the calling thread at least until the specified time.
template <class Clock, class Duration>
void sleep_until(const chrono::time_point<Clock, Duration>& Abs_time);
void sleep_until(const xtime *Abs_time);
Parameters
Abs_time
Represents a point in time.
Remarks
This function does not throw any exceptions.
swap Function
Swaps the states of two thread
objects.
void swap(
thread& Left,
thread& Right) noexcept;
Parameters
Left
The left thread
object.
Right
The right thread
object.
Remarks
The function calls Left.swap(Right)
.
yield Function
Signals the operating system to run other threads, even if the current thread would ordinarily continue to run.
inline void yield() noexcept;