Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
[s4u] add actor join
authoradfaure <adrien.faure2@gmail.com>
Tue, 7 Jun 2016 07:52:20 +0000 (09:52 +0200)
committeradfaure <adrien.faure2@gmail.com>
Tue, 7 Jun 2016 07:52:20 +0000 (09:52 +0200)
include/simgrid/s4u/actor.hpp
src/s4u/s4u_actor.cpp

index e96a862..f479cf5 100644 (file)
@@ -77,6 +77,11 @@ public:
 
   static void kill(int pid);
   
 
   static void kill(int pid);
   
+  /**
+   * Wait for the actor to finish.
+   */ 
+  void join();
+  
   // Static methods on all actors:
 
   /** Ask kindly to all actors to die. Only the issuer will survive. */
   // Static methods on all actors:
 
   /** Ask kindly to all actors to die. Only the issuer will survive. */
index 4a58590..37302a7 100644 (file)
@@ -29,6 +29,10 @@ s4u::Actor::Actor(const char* name, s4u::Host *host, double killTime, std::funct
 
 s4u::Actor::~Actor() {}
 
 
 s4u::Actor::~Actor() {}
 
+void s4u::Actor::join() {
+  simcall_process_join(pimpl_, -1);
+}
+
 void s4u::Actor::setAutoRestart(bool autorestart) {
   simcall_process_auto_restart_set(pimpl_,autorestart);
 }
 void s4u::Actor::setAutoRestart(bool autorestart) {
   simcall_process_auto_restart_set(pimpl_,autorestart);
 }