SimGrid  3.18
Versatile Simulation of Distributed Systems
simgrid::kernel::context::BoostContext Class Referenceabstract

Detailed Description

Userspace context switching implementation based on Boost.Context.

#include <ContextBoost.hpp>

Inheritance diagram for simgrid::kernel::context::BoostContext:
simgrid::kernel::context::Context simgrid::kernel::context::SerialBoostContext

Public Member Functions

 BoostContext (std::function< void()> code, void_pfn_smxprocess_t cleanup_func, smx_actor_t process)
 
 ~BoostContext () override
 
void stop () override
 
virtual void resume ()=0
 
- Public Member Functions inherited from simgrid::kernel::context::Context
 Context (std::function< void()> code, void_pfn_smxprocess_t cleanup_func, smx_actor_t process)
 
void operator() ()
 
bool has_code () const
 
smx_actor_t process ()
 
void set_cleanup (void_pfn_smxprocess_t cleanup)
 
virtual ~Context ()
 
virtual void suspend ()=0
 

Static Public Member Functions

static void swap (BoostContext *from, BoostContext *to)
 
static BoostContextgetMaestro ()
 
static void setMaestro (BoostContext *maestro)
 

Additional Inherited Members

- Public Attributes inherited from simgrid::kernel::context::Context
bool iwannadie
 

Constructor & Destructor Documentation

◆ BoostContext()

simgrid::kernel::context::BoostContext::BoostContext ( std::function< void()>  code,
void_pfn_smxprocess_t  cleanup_func,
smx_actor_t  process 
)

◆ ~BoostContext()

simgrid::kernel::context::BoostContext::~BoostContext ( )
override

Member Function Documentation

◆ stop()

void simgrid::kernel::context::BoostContext::stop ( )
overridevirtual

Reimplemented from simgrid::kernel::context::Context.

◆ resume()

virtual void simgrid::kernel::context::BoostContext::resume ( )
pure virtual

◆ swap()

void simgrid::kernel::context::BoostContext::swap ( BoostContext from,
BoostContext to 
)
inlinestatic

◆ getMaestro()

static BoostContext* simgrid::kernel::context::BoostContext::getMaestro ( )
inlinestatic

◆ setMaestro()

static void simgrid::kernel::context::BoostContext::setMaestro ( BoostContext maestro)
inlinestatic

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