std::list<smx_activity_t> comms; /* the current non-blocking communication synchros */
xbt_dict_t properties = nullptr;
s_smx_simcall_t simcall;
- void *data = nullptr; /* kept for compatibility, it should be replaced with moddata */
+ void* userdata = nullptr; /* kept for compatibility, it should be replaced with moddata */
std::vector<s_smx_process_exit_fun_t> on_exit; /* list of functions executed when the process dies */
std::function<void()> code;
void daemonize();
bool isDaemon() { return daemon; } /** Whether this actor has been daemonized */
bool isSuspended() { return suspended; }
- smx_activity_t suspend(smx_actor_t issuer);
+ simgrid::s4u::Actor* restart();
+ smx_activity_t suspend(ActorImpl* issuer);
void resume();
smx_activity_t sleep(double duration);
+ void setUserData(void* data) { userdata = data; }
+ void* getUserData() { return userdata; }
};
}
XBT_PRIVATE smx_actor_t SIMIX_process_get_by_name(const char* name);
XBT_PRIVATE void SIMIX_process_auto_restart_set(smx_actor_t process, int auto_restart);
-XBT_PRIVATE smx_actor_t SIMIX_process_restart(smx_actor_t process, smx_actor_t issuer);
extern void (*SMPI_switch_data_segment)(int dest);