|
errno_t | Join () noexcept |
| Waits for a thread to complete execution. More...
|
|
errno_t | Detach () noexcept |
| Detaches the thread. More...
|
|
bool | IsJoinable () const noexcept |
| Checks whether a join is possible. More...
|
|
errno_t | GetPriority (int32_t *priority) noexcept |
| Gets the thread priority. More...
|
|
errno_t | ChangePriority (int32_t priority) noexcept |
| Sets the thread priority. More...
|
|
errno_t | SetAffinity (uint32_t affinity) noexcept |
| Sets the processor affinity mask for the thread. More...
|
|
nlib_thread | GetNativeHandle () const noexcept |
| Gets the implementation dependent thread ID. More...
|
|
|
constexpr | Thread () noexcept |
| Instantiates the object with default parameters (default constructor).
|
|
| ~Thread () noexcept |
| Destructor. Joins if the thread has not been joined.
|
|
| Thread (Thread &&rhs) noexcept |
| Instantiates the object (move constructor). This function is useful when using C++11.
|
|
Thread & | operator= (Thread &&rhs) noexcept |
| Move assignment operator. This function is useful when using C++11.
|
|
| Thread (Thread &rhs, move_tag) noexcept |
| Corresponds to a move constructor.
|
|
Thread & | assign (Thread &rhs, move_tag) noexcept |
| Corresponds to a move assignment operator.
|
|
void | swap (Thread &rhs) noexcept |
| Swaps the contents of an object. More...
|
|
bool | operator== (const Thread &rhs) noexcept |
| Compares threads using the nlib_thread_equal function.
|
|
bool | operator!= (const Thread &rhs) noexcept |
| Compares threads using the nlib_thread_equal function.
|
|
|
errno_t | StartRaw (ThreadFunc func, void *arg) noexcept |
| Starts running a function that has one void* type argument in a different thread. More...
|
|
errno_t | StartRaw (ThreadFunc func, void *arg, const ThreadSettings &settings) noexcept |
| Starts running a function that has one void* type argument in a different thread. More...
|
|
errno_t | StartRaw (const ThreadSettings &settings, ThreadArg<>::Func func) noexcept |
| Starts a function that has no arguments in a different thread. More...
|
|
errno_t | StartRaw (ThreadArg<>::Func func) noexcept |
| Starts a function that has no arguments in a different thread. More...
|
|
template<class ThArg > |
errno_t | StartRaw (const ThreadSettings &settings, UniquePtr< ThArg > &ptr) noexcept |
| Starts running another thread. More...
|
|
template<class ThArg > |
errno_t | StartRaw (UniquePtr< ThArg > &ptr) noexcept |
| Starts running another thread. More...
|
|
|
template<class FUNC > |
errno_t | Start (const ThreadSettings &settings, const FUNC &f, move_tag) |
| This function is nearly identical to the version without start options, except that it can specify thread start options.
|
|
template<class FUNC > |
errno_t | Start (const FUNC &f, move_tag) |
| Starts a function that has no arguments in a different thread. This function is nearly identical to the version with one argument, except for the lack of arguments.
|
|
template<class FUNC > |
errno_t | Start (const ThreadSettings &settings, const FUNC &f) |
| This function is nearly identical to the version without start options, except that it can specify thread start options.
|
|
template<class FUNC > |
errno_t | Start (const FUNC &f) |
| Starts a function that has no arguments in a different thread. More...
|
|
|
template<class FUNC , class T1 > |
errno_t | Start (const ThreadSettings &settings, const FUNC &f, const T1 &arg1, move_tag) |
| This function is nearly identical to the version without start options, except that it can specify thread start options.
|
|
template<class FUNC , class T1 > |
errno_t | Start (const FUNC &f, const T1 &arg1, move_tag) |
| Starts a function that has one argument in a different thread. More...
|
|
template<class FUNC , class T1 > |
errno_t | Start (const ThreadSettings &settings, const FUNC &f, const T1 &arg1) |
| This function is nearly identical to the version without start options, except that it can specify thread start options.
|
|
template<class FUNC , class T1 > |
errno_t | Start (const FUNC &f, const T1 &arg1) |
| Starts a function that has one argument in a different thread. More...
|
|
|
template<class FUNC , class T1 , class T2 > |
errno_t | Start (const ThreadSettings &settings, const FUNC &f, const T1 &arg1, const T2 &arg2, move_tag) |
| This function is nearly identical to the version without start options, except that it can specify thread start options.
|
|
template<class FUNC , class T1 , class T2 > |
errno_t | Start (const FUNC &f, const T1 &arg1, const T2 &arg2, move_tag) |
| Starts a function that has two arguments in a different thread. This function is nearly identical to the version with one argument, except that it takes two arguments.
|
|
template<class FUNC , class T1 , class T2 > |
errno_t | Start (const ThreadSettings &settings, const FUNC &f, const T1 &arg1, const T2 &arg2) |
| This function is nearly identical to the version without start options, except that it can specify thread start options.
|
|
template<class FUNC , class T1 , class T2 > |
errno_t | Start (const FUNC &f, const T1 &arg1, const T2 &arg2) |
| Starts a function that has two arguments in a different thread. This function is nearly identical to the version with one argument, except that it takes two arguments.
|
|
|
template<class FUNC , class T1 , class T2 , class T3 > |
errno_t | Start (const ThreadSettings &settings, const FUNC &f, const T1 &arg1, const T2 &arg2, const T3 &arg3, move_tag) |
| This function is nearly identical to the version without start options, except that it can specify thread start options.
|
|
template<class FUNC , class T1 , class T2 , class T3 > |
errno_t | Start (const FUNC &f, const T1 &arg1, const T2 &arg2, const T3 &arg3, move_tag) |
| Starts a function that has three arguments in a different thread. This function is nearly identical to the version with one argument, except that it takes three arguments.
|
|
template<class FUNC , class T1 , class T2 , class T3 > |
errno_t | Start (const ThreadSettings &settings, const FUNC &f, const T1 &arg1, const T2 &arg2, const T3 &arg3) |
| This function is nearly identical to the version without start options, except that it can specify thread start options.
|
|
template<class FUNC , class T1 , class T2 , class T3 > |
errno_t | Start (const FUNC &f, const T1 &arg1, const T2 &arg2, const T3 &arg3) |
| Starts a function that has three arguments in a different thread. This function is nearly identical to the version with one argument, except that it takes three arguments.
|
|
|
template<class FUNC , class T1 , class T2 , class T3 , class T4 > |
errno_t | Start (const ThreadSettings &settings, const FUNC &f, const T1 &arg1, const T2 &arg2, const T3 &arg3, const T4 &arg4, move_tag) |
| This function is nearly identical to the version without start options, except that it can specify thread start options.
|
|
template<class FUNC , class T1 , class T2 , class T3 , class T4 > |
errno_t | Start (const FUNC &f, const T1 &arg1, const T2 &arg2, const T3 &arg3, const T4 &arg4, move_tag) |
| Starts a function that has four arguments in a different thread. This function is nearly identical to the version with one argument, except that it takes four arguments.
|
|
template<class FUNC , class T1 , class T2 , class T3 , class T4 > |
errno_t | Start (const ThreadSettings &settings, const FUNC &f, const T1 &arg1, const T2 &arg2, const T3 &arg3, const T4 &arg4) |
| This function is nearly identical to the version without start options, except that it can specify thread start options.
|
|
template<class FUNC , class T1 , class T2 , class T3 , class T4 > |
errno_t | Start (const FUNC &f, const T1 &arg1, const T2 &arg2, const T3 &arg3, const T4 &arg4) |
| Starts a function that has four arguments in a different thread. This function is nearly identical to the version with one argument, except that it takes four arguments.
|
|
|
template<class FUNC , class T1 , class T2 , class T3 , class T4 , class T5 > |
errno_t | Start (const ThreadSettings &settings, const FUNC &f, const T1 &arg1, const T2 &arg2, const T3 &arg3, const T4 &arg4, const T5 &arg5, move_tag) |
| This function is nearly identical to the version without start options, except that it can specify thread start options.
|
|
template<class FUNC , class T1 , class T2 , class T3 , class T4 , class T5 > |
errno_t | Start (const FUNC &f, const T1 &arg1, const T2 &arg2, const T3 &arg3, const T4 &arg4, const T5 &arg5, move_tag) |
| Starts a function that has five arguments in a different thread. This function is nearly identical to the version with one argument, except that it takes five arguments.
|
|
template<class FUNC , class T1 , class T2 , class T3 , class T4 , class T5 > |
errno_t | Start (const ThreadSettings &settings, const FUNC &f, const T1 &arg1, const T2 &arg2, const T3 &arg3, const T4 &arg4, const T5 &arg5) |
| This function is nearly identical to the version without start options, except that it can specify thread start options.
|
|
template<class FUNC , class T1 , class T2 , class T3 , class T4 , class T5 > |
errno_t | Start (const FUNC &f, const T1 &arg1, const T2 &arg2, const T3 &arg3, const T4 &arg4, const T5 &arg5) |
| Starts a function that has five arguments in a different thread. This function is nearly identical to the version with one argument, except that it takes five arguments.
|
|