summaryrefslogtreecommitdiff
path: root/node_modules/webworker-threads/examples/fiveThreads.ls
diff options
context:
space:
mode:
authoryo mama <pepper@scannerjammer.com>2015-04-04 01:00:59 -0700
committeryo mama <pepper@scannerjammer.com>2015-04-04 01:00:59 -0700
commitc7c22e3db1c826bcfb2bc66651ec480aae0d4ae0 (patch)
tree8546df448afef40d3814d2581f4dacff7cebb87f /node_modules/webworker-threads/examples/fiveThreads.ls
Diffstat (limited to 'node_modules/webworker-threads/examples/fiveThreads.ls')
-rwxr-xr-xnode_modules/webworker-threads/examples/fiveThreads.ls15
1 files changed, 15 insertions, 0 deletions
diff --git a/node_modules/webworker-threads/examples/fiveThreads.ls b/node_modules/webworker-threads/examples/fiveThreads.ls
new file mode 100755
index 0000000..9d8b324
--- /dev/null
+++ b/node_modules/webworker-threads/examples/fiveThreads.ls
@@ -0,0 +1,15 @@
+#!/usr/bin/env lsc
+# Same as multiThreadEvented.ls, but with 5 workers
+
+{ Worker } = require \webworker-threads
+
+for til 5 => (new Worker ->
+ fibo = (n) -> if n > 1 then fibo(n - 1) + fibo(n - 2) else 1
+ @onmessage = ({ data }) -> postMessage fibo data
+)
+ ..onmessage = ({ data }) ->
+ console.log "[#{ @thread.id }] #data"
+ @postMessage Math.ceil Math.random! * 30
+ ..postMessage Math.ceil Math.random! * 30
+
+do spin = -> process.nextTick spin