• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1/* Worker code for test_worker.js */
2import * as std from "std";
3import * as os from "os";
4
5var parent = os.Worker.parent;
6
7function handle_msg(e) {
8    var ev = e.data;
9    //          print("child_recv", JSON.stringify(ev));
10    switch(ev.type) {
11    case "abort":
12        parent.postMessage({ type: "done" });
13        break;
14    case "sab":
15        /* modify the SharedArrayBuffer */
16        ev.buf[2] = 10;
17        parent.postMessage({ type: "sab_done", buf: ev.buf });
18        break;
19    }
20}
21
22function worker_main() {
23    var i;
24
25    parent.onmessage = handle_msg;
26    for(i = 0; i < 10; i++) {
27        parent.postMessage({ type: "num", num: i });
28    }
29}
30
31worker_main();
32