std::thread - Man Page
Synopsis
#include <thread>
Classes
class id
Public Types
using native_handle_type
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.)
bool operator== (thread::id __x, thread::id __y) noexcept
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
C++11
Member Function Documentation
native_handle_type std::thread::native_handle () [inline]
- Precondition
thread is joinable
Author
Generated automatically by Doxygen for libstdc++ from the source code.