YACLib
C++ library for concurrent tasks execution
|
#include <fiber.hpp>
Public Member Functions | |
Fiber (Args &&... args) | |
~Fiber () final=default | |
Public Member Functions inherited from yaclib::detail::fiber::FiberBase | |
FiberBase () | |
void | SetJoiningFiber (FiberBase *joining_fiber) noexcept |
Id | GetId () const noexcept |
void | Resume () |
void | Suspend () |
FiberState | GetState () noexcept |
void | SetState (FiberState state) noexcept |
void | SetThreadDead () noexcept |
bool | IsThreadAlive () const noexcept |
void * | GetTLS (std::uint64_t id, std::unordered_map< std::uint64_t, void * > &defaults) |
void | SetTLS (std::uint64_t id, void *value) |
virtual | ~FiberBase ()=default |
Public Member Functions inherited from yaclib::detail::fiber::Node | |
bool | Erase () |
Static Public Member Functions | |
static void | Trampoline (void *arg) noexcept |
Static Public Member Functions inherited from yaclib::detail::fiber::FiberBase | |
static IStackAllocator & | GetAllocator () noexcept |
Additional Inherited Members | |
Public Types inherited from yaclib::detail::fiber::FiberBase | |
using | Id = std::uint64_t |
Public Attributes inherited from yaclib::detail::fiber::Node | |
Node * | prev {this} |
Node * | next {this} |
Protected Member Functions inherited from yaclib::detail::fiber::FiberBase | |
void | Start () |
void | Exit () |
Protected Attributes inherited from yaclib::detail::fiber::FiberBase | |
ExecutionContext | _context {} |
Stack | _stack |
std::exception_ptr | _exception |
|
inline |
Definition at line 16 of file fiber.hpp.
References yaclib::detail::fiber::FiberBase::_context, yaclib::detail::fiber::FiberBase::_stack, yaclib::detail::fiber::Stack::GetAllocation(), and yaclib::detail::fiber::ExecutionContext::Setup().
|
finaldefault |
References yaclib::MakeContract().
|
inlinestaticnoexcept |
Definition at line 20 of file fiber.hpp.
References yaclib::MakeContract(), and yaclib::detail::fiber::FiberBase::Start().