table of contents
| std::thread(3cxx) | std::thread(3cxx) | 
NAME¶
std::thread
SYNOPSIS¶
#include <thread>
Classes¶
class id
  
  
Public Types¶
using _State_ptr = unique_ptr< _State >
  
  using native_handle_type = __gthread_t
  
  
Public Member Functions¶
template<typename _Callable , typename... _Args,
    typename = _Require<__not_same<_Callable>>>
    thread (_Callable &&__f, _Args &&...
    __args)
  
  thread (const thread &)=delete
  
  thread (thread &&__t) noexcept
  
  void detach ()
  
  id get_id () const noexcept
  
  void join ()
  
  bool joinable () const noexcept
  
  native_handle_type native_handle ()
  
  thread & operator= (const thread &)=delete
  
  thread & operator= (thread &&__t) noexcept
  
  void swap (thread &__t) noexcept
  
  
Static Public Member Functions¶
static unsigned int hardware_concurrency () noexcept
  
  
Related Symbols¶
(Note that these are not member symbols.)
  
  void swap (thread &__x, thread &__y)
    noexcept
  
  
Detailed Description¶
A std::thread represents a new thread of execution.
The default constructor creates an object that does not own a thread. The thread(F&&, Args&&...) constructor invokes a callable in a new thread, and owns that new thread. A std::thread that owns a thread is joinable. Joining a thread waits for it to finish executing, which happens when the callable running in that thread returns.
A std::thread cannot be copied, but can be moved. Moving a joinable object transfers ownership of its thread to another object.
A joinable std::thread must be explicitly joined (or detached) before it is destroyed or assigned to. Attempting to destroy a joinable thread will terminate the whole process.
Since
Member Function Documentation¶
native_handle_type std::thread::native_handle () [inline]¶
Precondition
Author¶
Generated automatically by Doxygen for libstdc++ from the source code.
| libstdc++ |