Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Add kademlia example
[simgrid.git] / examples / async / Master.java
index 6c28a36..19e840c 100644 (file)
@@ -11,12 +11,17 @@ package async;
 import java.util.ArrayList;
 
 import org.simgrid.msg.Comm;
+import org.simgrid.msg.Host;
+import org.simgrid.msg.Process;
 import org.simgrid.msg.Msg;
 import org.simgrid.msg.MsgException;
 import org.simgrid.msg.Task;
 import org.simgrid.msg.Process;;
 
 public class Master extends Process {
+       public Master(Host host, String name, String[]args) {
+               super(host,name,args);
+       }
        public void main(String[] args) throws MsgException {
                if (args.length < 4) {
                        Msg.info("Master needs 4 arguments");
@@ -30,7 +35,6 @@ public class Master extends Process {
                int slavesCount = Integer.valueOf(args[3]).intValue();
 
                Msg.info("Hello! Got "+  slavesCount + " slaves and "+tasksCount+" tasks to process");
-               
                ArrayList<Comm> comms = new ArrayList<Comm>();
                
                for (int i = 0; i < tasksCount; i++) {
@@ -53,7 +57,7 @@ public class Master extends Process {
                                        e.printStackTrace();
                                }
                        }
-                       simulatedSleep(1);
+                       waitFor(1);
                }
                
                Msg.info("All tasks have been dispatched. Let's tell (asynchronously) everybody the computation is over, and sleep 20s so that nobody gets a message from a terminated process.");
@@ -62,7 +66,7 @@ public class Master extends Process {
                        FinalizeTask task = new FinalizeTask();
                        task.dsend("slave_"+(i%slavesCount));
                }
-               simulatedSleep(20);
+               waitFor(20);
 
                Msg.info("Goodbye now!");
        }