15 std::swap(_impl,
t._impl);
23 if (_impl ==
nullptr) {
24 throw std::system_error{std::make_error_code(std::errc::no_such_process)};
27 throw std::system_error{std::make_error_code(std::errc::resource_deadlock_would_occur)};
39 if (_impl ==
nullptr) {
40 throw std::system_error{std::make_error_code(std::errc::no_such_process)};
43 throw std::system_error{std::make_error_code(std::errc::resource_deadlock_would_occur)};
53 YACLIB_DEBUG(
true,
"native_hande is not supported for fibers");
62 if (_impl !=
nullptr) {
75void Thread::AfterJoinOrDetach() {
FiberState GetState() noexcept
void SetThreadDead() noexcept
void SetJoiningFiber(FiberBase *joining_fiber) noexcept
Id GetId() const noexcept
id get_id() const noexcept
native_handle_type native_handle() noexcept
static unsigned int hardware_concurrency() noexcept
bool joinable() const noexcept
Thread & operator=(const Thread &)=delete
void * native_handle_type
static void SetHardwareConcurrency(unsigned int hardware_concurrency) noexcept
static detail::fiber::FiberBase::Id GetId()
static detail::fiber::FiberBase * Current() noexcept
#define YACLIB_DEBUG(cond, message)
#define YACLIB_ASSERT(cond)
static unsigned int gHardwareConcurrency
Contract< V, E > MakeContract()
Creates related future and promise.