}
void Actor::setAutoRestart(bool autorestart) {
- simcall_process_auto_restart_set(pimpl_,autorestart);
+ simgrid::simix::kernelImmediate([this, autorestart]() { pimpl_->auto_restart = autorestart; });
}
void Actor::onExit(int_f_pvoid_pvoid_t fun, void* data)
});
}
+Actor* Actor::restart()
+{
+ return simgrid::simix::kernelImmediate([this]() { return pimpl_->restart(); });
+}
+
// ***** this_actor *****
namespace this_actor {
simcall_process_sleep(timeout - now);
}
-e_smx_state_t execute(double flops) {
+void execute(double flops)
+{
smx_activity_t s = simcall_execution_start(nullptr,flops,1.0/*priority*/,0./*bound*/);
- return simcall_execution_wait(s);
+ simcall_execution_wait(s);
}
-void* recv(MailboxPtr chan) {
+void* recv(MailboxPtr chan) // deprecated
+{
return chan->get();
}
-void* recv(MailboxPtr chan, double timeout)
+void* recv(MailboxPtr chan, double timeout) // deprecated
{
return chan->get(timeout);
}
-void send(MailboxPtr chan, void* payload, double simulatedSize)
+void send(MailboxPtr chan, void* payload, double simulatedSize) // deprecated
{
chan->put(payload, simulatedSize);
}
-void send(MailboxPtr chan, void* payload, double simulatedSize, double timeout)
+void send(MailboxPtr chan, void* payload, double simulatedSize, double timeout) // deprecated
{
chan->put(payload, simulatedSize, timeout);
}
-CommPtr isend(MailboxPtr chan, void* payload, double simulatedSize)
+CommPtr isend(MailboxPtr chan, void* payload, double simulatedSize) // deprecated
{
return chan->put_async(payload, simulatedSize);
}
-CommPtr irecv(MailboxPtr chan, void** data)
+CommPtr irecv(MailboxPtr chan, void** data) // deprecated
{
return chan->get_async(data);
}