|
YACLib
C++ library for concurrent tasks execution
|
#include <thread.hpp>
Public Types | |
| using | id = FiberBase::Id |
| using | native_handle_type = void * |
Public Member Functions | |
| Thread (const Thread &)=delete | |
| Thread & | operator= (const Thread &)=delete |
| template<typename... Args> | |
| Thread (Args &&... args) | |
| Thread () noexcept | |
| Thread (Thread &&t) noexcept | |
| Thread & | operator= (Thread &&t) noexcept |
| ~Thread () | |
| void | swap (Thread &t) noexcept |
| bool | joinable () const noexcept |
| void | join () |
| void | detach () |
| id | get_id () const noexcept |
| native_handle_type | native_handle () noexcept |
Static Public Member Functions | |
| static unsigned int | hardware_concurrency () noexcept |
| static void | SetHardwareConcurrency (unsigned int hardware_concurrency) noexcept |
Definition at line 13 of file thread.hpp.
Definition at line 18 of file thread.hpp.
Definition at line 19 of file thread.hpp.
|
inlineexplicit |
Definition at line 22 of file thread.hpp.
References yaclib::fault::Scheduler::GetScheduler(), and yaclib::fault::Scheduler::Schedule().
|
defaultnoexcept |
|
noexcept |
Definition at line 72 of file thread.cpp.
References yaclib::MakeContract().
| yaclib::detail::fiber::Thread::~Thread | ( | ) |
Definition at line 61 of file thread.cpp.
| void yaclib::detail::fiber::Thread::detach | ( | ) |
Definition at line 38 of file thread.cpp.
References joinable().
|
noexcept |
Definition at line 48 of file thread.cpp.
References yaclib::detail::fiber::FiberBase::GetId().
Referenced by joinable().
Definition at line 57 of file thread.cpp.
References yaclib::detail::fiber::gHardwareConcurrency.
| void yaclib::detail::fiber::Thread::join | ( | ) |
Definition at line 22 of file thread.cpp.
References yaclib::detail::fiber::Completed, yaclib::fault::Scheduler::Current(), yaclib::detail::fiber::FiberBase::GetState(), joinable(), yaclib::detail::fiber::FiberBase::SetJoiningFiber(), and yaclib::fault::Scheduler::Suspend().
|
noexcept |
Definition at line 18 of file thread.cpp.
References get_id(), and yaclib::fault::Scheduler::GetId().
|
noexcept |
Definition at line 52 of file thread.cpp.
References YACLIB_DEBUG.
Definition at line 67 of file thread.cpp.
References yaclib::MakeContract().
|
staticnoexcept |
Definition at line 85 of file thread.cpp.
References yaclib::detail::fiber::gHardwareConcurrency.
Referenced by yaclib::fiber::SetHardwareConcurrency().
Definition at line 14 of file thread.cpp.
References yaclib::MakeContract().