YACLib
C++ library for concurrent tasks execution
Loading...
Searching...
No Matches
yaclib::detail::fiber::Fiber< Args > Class Template Referencefinal

#include <fiber.hpp>

Inheritance diagram for yaclib::detail::fiber::Fiber< Args >:
[legend]
Collaboration diagram for yaclib::detail::fiber::Fiber< Args >:
[legend]

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
 
voidGetTLS (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 IStackAllocatorGetAllocator () 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
Nodeprev {this}
 
Nodenext {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
 

Detailed Description

template<typename... Args>
class yaclib::detail::fiber::Fiber< Args >

Definition at line 13 of file fiber.hpp.

Constructor & Destructor Documentation

◆ Fiber()

◆ ~Fiber()

template<typename... Args>
yaclib::detail::fiber::Fiber< Args >::~Fiber ( )
finaldefault

Member Function Documentation

◆ Trampoline()

template<typename... Args>
static void yaclib::detail::fiber::Fiber< Args >::Trampoline ( void arg)
inlinestaticnoexcept

Definition at line 20 of file fiber.hpp.

References yaclib::MakeContract(), and yaclib::detail::fiber::FiberBase::Start().


The documentation for this class was generated from the following file: