std::list<activity::ActivityImplPtr> comms; /* the current non-blocking communication synchros */
s_smx_simcall simcall;
/* list of functions executed when the process dies */
- const std::shared_ptr<std::vector<std::function<void(bool)>>> on_exit =
+ std::shared_ptr<std::vector<std::function<void(bool)>>> on_exit =
std::make_shared<std::vector<std::function<void(bool)>>>();
- std::function<void()> code;
+ std::function<void()> code_;
simix::Timer* kill_timer = nullptr;
private:
/* S4U/implem interfaces */
private:
s4u::Actor piface_; // Our interface is part of ourselves
+
+ void undaemonize();
+
public:
s4u::ActorPtr iface() { return s4u::ActorPtr(&piface_); }
s4u::Actor* ciface() { return &piface_; }
explicit ProcessArg(s4u::Host* host, ActorImpl* actor)
: name(actor->get_name())
- , code(actor->code)
+ , code(actor->code_)
, data(actor->get_user_data())
, host(host)
, kill_time(actor->get_kill_time())