Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
rearrange lua example in separate simulation component files
[simgrid.git] / examples / lua / console / slave.lua
diff --git a/examples/lua/console/slave.lua b/examples/lua/console/slave.lua
new file mode 100644 (file)
index 0000000..9c257c4
--- /dev/null
@@ -0,0 +1,25 @@
+
+
+-- Slave Function ---------------------------------------------------------
+function Slave(...)
+
+local my_mailbox="slave "..arg[1]
+simgrid.info("Hello from lua, I'm a poor slave with mbox: "..my_mailbox)
+
+while true do
+
+  local tk = simgrid.Task.recv(my_mailbox);
+  if (simgrid.Task.name(tk) == "finalize") then
+    simgrid.info("Slave '" ..my_mailbox.."' got finalize msg");
+    break
+  end
+  --local tk_name = simgrid.Task.name(tk) 
+  simgrid.info("Slave '" ..my_mailbox.."' processing "..simgrid.Task.name(tk))
+  simgrid.Task.execute(tk)
+  simgrid.info("Slave '" ..my_mailbox.."': task "..simgrid.Task.name(tk) .. " done")
+end -- while
+
+simgrid.info("Slave '" ..my_mailbox.."': I'm Done . See You !!");
+
+end 
+-- end_of_slave