SimGrid  3.16
Versatile Simulation of Distributed Systems
Actor.hpp File Reference
#include <atomic>
#include <chrono>
#include <functional>
#include <memory>
#include <stdexcept>
#include <string>
#include <type_traits>
#include <utility>
#include <vector>
#include <xbt/Extendable.hpp>
#include <xbt/functional.hpp>
#include <xbt/string.hpp>
#include <simgrid/chrono.hpp>
#include <simgrid/s4u/forward.hpp>

Classes

class  simgrid::s4u::Actor
 An actor is an independent stream of execution in your distributed application. More...
 

Namespaces

 simgrid
 Alltoall Bruck.
 
 simgrid::s4u
 
 simgrid::s4u::this_actor
 Static methods working on the current actor (see s4u::Actor)
 

Functions

bool simgrid::s4u::this_actor::isMaestro ()
 Returns true if run from the kernel mode, and false if run from a real actor. More...
 
void simgrid::s4u::this_actor::sleep_for (double duration)
 Block the actor sleeping for that amount of seconds (may throws hostFailure) More...
 
void simgrid::s4u::this_actor::sleep_until (double timeout)
 
template<class Rep , class Period >
void simgrid::s4u::this_actor::sleep_for (std::chrono::duration< Rep, Period > duration)
 
template<class Duration >
void simgrid::s4u::this_actor::sleep_until (const SimulationTimePoint< Duration > &timeout_time)
 
void simgrid::s4u::this_actor::sleep (double duration)
 
e_smx_state_t simgrid::s4u::this_actor::execute (double flop)
 Block the actor, computing the given amount of flops. More...
 
voidsimgrid::s4u::this_actor::recv (MailboxPtr chan)
 Block the actor until it gets a message from the given mailbox. More...
 
CommPtr simgrid::s4u::this_actor::irecv (MailboxPtr chan, void **data)
 
void simgrid::s4u::this_actor::send (MailboxPtr chan, void *payload, double simulatedSize)
 Block the actor until it delivers a message of the given simulated size to the given mailbox. More...
 
void simgrid::s4u::this_actor::send (MailboxPtr chan, void *payload, double simulatedSize, double timeout)
 
CommPtr simgrid::s4u::this_actor::isend (MailboxPtr chan, void *payload, double simulatedSize)
 
void simgrid::s4u::this_actor::dsend (MailboxPtr chan, void *payload, double simulatedSize)
 
aid_t simgrid::s4u::this_actor::pid ()
 Returns the actor ID of the current actor (same as pid). More...
 
aid_t simgrid::s4u::this_actor::ppid ()
 Returns the ancestor's actor ID of the current actor (same as ppid). More...
 
std::string simgrid::s4u::this_actor::name ()
 Returns the name of the current actor. More...
 
Host * simgrid::s4u::this_actor::host ()
 Returns the name of the host on which the process is running. More...
 
void simgrid::s4u::this_actor::suspend ()
 Suspend the actor. More...
 
void simgrid::s4u::this_actor::resume ()
 Resume the actor. More...
 
int simgrid::s4u::this_actor::isSuspended ()
 
void simgrid::s4u::this_actor::kill ()
 kill the actor. More...
 
void simgrid::s4u::this_actor::onExit (int_f_pvoid_pvoid_t fun, void *data)
 Add a function to the list of "on_exit" functions. More...
 
void simgrid::s4u::this_actor::migrate (Host *new_host)
 Migrate the actor to a new host. More...