void sleep(double duration);
/** Block the actor, computing the given amount of flops */
- void execute(double flop);
+ e_smx_state_t execute(double flop);
/** Block the actor until it gets a message from the given mailbox */
void *recv(Mailbox &chan);
simcall_process_sleep(duration);
}
-void s4u::Actor::execute(double flops) {
- simcall_process_execute(NULL,flops,1.0/*priority*/,0./*bound*/, 0L/*affinity*/);
+e_smx_state_t s4u::Actor::execute(double flops) {
+ smx_synchro_t s = simcall_process_execute(NULL,flops,1.0/*priority*/,0./*bound*/, 0L/*affinity*/);
+ return simcall_process_execution_wait(s);
}
void *s4u::Actor::recv(Mailbox &chan) {