#! ./tesh ! output sort $ java -cp ${classpath:=.} async/AsyncTest ./platform.xml ./async/asyncDeployment.xml "--log=root.fmt:[%10.6r]%e(%i:%P@%h)%e%m%n" > [ 0.000000] (10:async.Slave@Robert) Receiving on 'slave_8' > [ 0.000000] (11:async.Slave@Sirois) Receiving on 'slave_9' > [ 0.000000] (12:async.Slave@Monique) Receiving on 'slave_10' > [ 0.000000] (1:async.Master@Jacquelin) Hello! Got 7 slaves and 5 tasks to process > [ 0.000000] (1:async.Master@Jacquelin) Sending "Task_0" to "slave_0" > [ 0.000000] (1:async.Master@Jacquelin) Sending "Task_1" to "slave_1" > [ 0.000000] (1:async.Master@Jacquelin) Sending "Task_2" to "slave_2" > [ 0.000000] (1:async.Master@Jacquelin) Sending "Task_3" to "slave_3" > [ 0.000000] (1:async.Master@Jacquelin) Sending "Task_4" to "slave_4" > [ 0.000000] (2:async.Forwarder@Jackson) Receiving on 'slave_0' > [ 0.000000] (3:async.Forwarder@Casavant) Receiving on 'slave_1' > [ 0.000000] (4:async.Slave@iRMX) Receiving on 'slave_2' > [ 0.000000] (5:async.Slave@Bousquet) Receiving on 'slave_3' > [ 0.000000] (6:async.Slave@Soucy) Receiving on 'slave_4' > [ 0.000000] (7:async.Slave@Kuenning) Receiving on 'slave_5' > [ 0.000000] (8:async.Slave@Browne) Receiving on 'slave_6' > [ 0.000000] (9:async.Slave@Stephen) Receiving on 'slave_7' > [ 0.851467] (2:async.Forwarder@Jackson) Sending "Task_0" to "slave_7" > [ 1.357014] (3:async.Forwarder@Casavant) Sending "Task_1" to "slave_9" > [ 2.000000] (11:async.Slave@Sirois) Received a task > [ 2.000000] (11:async.Slave@Sirois) Received "Task_1". Processing it. > [ 2.000000] (5:async.Slave@Bousquet) Received a task > [ 2.000000] (5:async.Slave@Bousquet) Received "Task_3". Processing it. > [ 2.000000] (6:async.Slave@Soucy) Received a task > [ 2.000000] (6:async.Slave@Soucy) Received "Task_4". Processing it. > [ 2.000364] (6:async.Slave@Soucy) Receiving on 'slave_4' > [ 2.000437] (11:async.Slave@Sirois) Receiving on 'slave_9' > [ 2.001165] (5:async.Slave@Bousquet) Receiving on 'slave_3' > [ 4.000000] (4:async.Slave@iRMX) Received a task > [ 4.000000] (4:async.Slave@iRMX) Received "Task_2". Processing it. > [ 4.000000] (9:async.Slave@Stephen) Received a task > [ 4.000000] (9:async.Slave@Stephen) Received "Task_0". Processing it. > [ 4.000728] (4:async.Slave@iRMX) Receiving on 'slave_2' > [ 4.000728] (9:async.Slave@Stephen) Receiving on 'slave_7' > [ 5.000000] (1:async.Master@Jacquelin) 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. > [ 5.851463] (2:async.Forwarder@Jackson) Got a finalize task. Let's forward (asynchronously) that we're done, and then sleep 20 seconds so that nobody gets a message from a terminated process. > [ 6.000000] (7:async.Slave@Kuenning) Received Finalize. I'm done. See you! > [ 6.000000] (8:async.Slave@Browne) Received Finalize. I'm done. See you! > [ 6.357007] (3:async.Forwarder@Casavant) Got a finalize task. Let's forward (asynchronously) that we're done, and then sleep 20 seconds so that nobody gets a message from a terminated process. > [ 7.000364] (6:async.Slave@Soucy) Received Finalize. I'm done. See you! > [ 7.000437] (11:async.Slave@Sirois) Received Finalize. I'm done. See you! > [ 7.001165] (5:async.Slave@Bousquet) Received Finalize. I'm done. See you! > [ 8.000000] (12:async.Slave@Monique) Received Finalize. I'm done. See you! > [ 9.000000] (10:async.Slave@Robert) Received Finalize. I'm done. See you! > [ 9.000728] (4:async.Slave@iRMX) Received Finalize. I'm done. See you! > [ 9.000728] (9:async.Slave@Stephen) Received Finalize. I'm done. See you! > [ 25.000000] (1:async.Master@Jacquelin) Goodbye now! > [ 25.851463] (2:async.Forwarder@Jackson) I'm done. See you! > [ 26.357007] (3:async.Forwarder@Casavant) I'm done. See you! > [ 29.000728] (0:@) MSG_main finished; Cleaning up the simulation... > [0.000000] [jmsg/INFO] Using regular java threads. Coroutines could speed your simulation up.