std::exception_ptr exception_;
bool finished_ = false;
- bool blocked_ = false; /* FIXME this field is never set to true. Either use it or remove it. */
bool suspended_ = false;
activity::ActivityImplPtr waiting_synchro = nullptr; /* the current blocking synchro if any */
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;
/* 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_; }