From c7c22e3db1c826bcfb2bc66651ec480aae0d4ae0 Mon Sep 17 00:00:00 2001 From: yo mama Date: Sat, 4 Apr 2015 01:00:59 -0700 Subject: first --- node_modules/webworker-threads/src/worker.ls | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 node_modules/webworker-threads/src/worker.ls (limited to 'node_modules/webworker-threads/src/worker.ls') diff --git a/node_modules/webworker-threads/src/worker.ls b/node_modules/webworker-threads/src/worker.ls new file mode 100644 index 0000000..4570bbb --- /dev/null +++ b/node_modules/webworker-threads/src/worker.ls @@ -0,0 +1,18 @@ +function Worker () => Threads = this; class + (code) -> + @thread = t = Threads.create! + t.on \message (args) ~> @onmessage? data: args + t.on \error (args) ~> @onerror? args + t.on \close -> t.destroy! + @terminate = -> t.destroy! + @add-event-listener = (event, cb) ~> + if event is \message + @onmessage = cb + else + t.on event, cb + @dispatch-event = (event) -> t.emitSerialized event.type, event + @post-message = (data) -> t.emitSerialized \message {data} + if typeof code is \function + t.eval "(#code)()" + else if code? + t.load code -- cgit v1.2.3-70-g09d2