Threads
Concurrency
Collaboration diagram for Threads:

## Namespaces

| std::this_thread

## Classes

struct | std::hash< thread::id >
class | std::thread
class | std::thread::id

## Typedefs

using | std::thread::_Invoker< _Tuple >::_Indices = typename _Build_index_tuple< tuple_size< _Tuple >::value >::__type
using | std::thread::_State_ptr = unique_ptr< _State >
typedef __gthread_t | std::thread::native_handle_type

## Functions

| std::thread::_State_impl< _Callable >::_State_impl (_Callable &&__f)
| std::thread::id::id (native_handle_type __id)
template<typename _Callable , typename... _Args, typename = _Require<__not_same<_Callable>>>
| std::thread::thread (_Callable &&__f, _Args &&... __args)
| std::thread::thread (const thread &)=delete
| std::thread::thread (thread &&__t) noexcept
template<typename _Callable , typename... _Args>
static _Invoker< __decayed_tuple< _Callable, _Args... > > | std::thread::__make_invoker (_Callable &&__callable, _Args &&... __args)
void | std::this_thread::__sleep_for (chrono::seconds, chrono::nanoseconds)
template<size_t... _Ind>
auto | std::thread::_Invoker< _Tuple >::_M_invoke (_Index_tuple< _Ind... >) noexcept(noexcept(std::__invoke(_S_declval< _Ind >()...))) -> decltype(std::__invoke(_S_declval< _Ind >()...))
void | std::thread::_State_impl< _Callable >::_M_run ()
virtual void | std::thread::_State::_M_run ()=0
template<size_t _Index>
static __tuple_element_t< _Index, _Tuple > && | std::thread::_Invoker< _Tuple >::_S_declval ()
void | std::thread::detach ()
thread::id | std::thread::get_id () const noexcept
thread::id | std::this_thread::get_id () noexcept
static unsigned int | std::thread::hardware_concurrency () noexcept
void | std::thread::join ()
bool | std::thread::joinable () const noexcept
native_handle_type | std::thread::native_handle ()
bool | std::operator!= (thread::id __x, thread::id __y) noexcept
auto | std::thread::_Invoker< _Tuple >::operator() () noexcept(noexcept(std::declval< _Invoker & >()._M_invoke(_Indices()))) -> decltype(std::declval< _Invoker & >()._M_invoke(_Indices()))
size_t | std::hash< thread::id >::operator() (const thread::id &__id) const noexcept
bool | std::operator< (thread::id __x, thread::id __y) noexcept
template<class _CharT , class _Traits >
basic_ostream< _CharT, _Traits > & | std::operator<< (basic_ostream< _CharT, _Traits > &__out, thread::id __id)
bool | std::operator<= (thread::id __x, thread::id __y) noexcept
thread & | std::thread::operator= (const thread &)=delete
thread & | std::thread::operator= (thread &&__t) noexcept
bool | std::operator== (thread::id __x, thread::id __y) noexcept
bool | std::operator> (thread::id __x, thread::id __y) noexcept
bool | std::operator>= (thread::id __x, thread::id __y) noexcept
template<typename _Rep , typename _Period >
void | std::this_thread::sleep_for (const chrono::duration< _Rep, _Period > &__rtime)
template<typename _Clock , typename _Duration >
void | std::this_thread::sleep_until (const chrono::time_point< _Clock, _Duration > &__atime)
void | std::thread::swap (thread &__t) noexcept
void | std::swap (thread &__x, thread &__y) noexcept
void | std::this_thread::yield () noexcept

## Variables

_Callable | std::thread::_State_impl< _Callable >::_M_func
_Tuple | std::thread::_Invoker< _Tuple >::_M_t

## Friends

class | std::thread::id::hash< thread::id >
bool | std::thread::id::operator< (thread::id __x, thread::id __y) noexcept
template<class _CharT , class _Traits >
basic_ostream< _CharT, _Traits > & | std::thread::id::operator<< (basic_ostream< _CharT, _Traits > &__out, thread::id __id)
bool | std::thread::id::operator== (thread::id __x, thread::id __y) noexcept
class | std::thread::id::thread

## Detailed Description

Classes for thread support.

## Function Documentation

## get_id()

thread::id std::this_thread::get_id | ( |  | ) |

inline noexcept

get_id

Definition at line 339 of file thread.

## native_handle()

native_handle_type std::thread::native_handle | ( |  | ) |

inline

Precondition
  thread is joinable

Definition at line 179 of file thread.

## sleep_for()

template<typename _Rep , typename _Period >

void std::this_thread::sleep_for | ( | const chrono::duration< _Rep, _Period > & | __rtime | ) |

inline

sleep_for

Definition at line 367 of file thread.

## sleep_until()

template<typename _Clock , typename _Duration >

void std::this_thread::sleep_until | ( | const chrono::time_point< _Clock, _Duration > & | __atime | ) |

inline

sleep_until

Definition at line 389 of file thread.

## yield()

void std::this_thread::yield | ( |  | ) |

inline noexcept

yield

Definition at line 354 of file thread.