1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-12-18 05:14:21 -05:00
denoland-deno/cli/tests/subdir/bench_worker.ts
Bartek Iwańczuk 161adfc51b
workers: proper TS libs, more spec-compliant APIs (#3812)
* split lib.deno_main.d.ts into:
  - lib.deno.shared_globals.d.ts
  - lib.deno.window.d.ts
  - lib.deno.worker.d.ts
* remove no longer used libs:
  - lib.deno_main.d.ts
  - lib.deno_worker.d.ts
* change module loading to use proper TS library for compilation
* align to Worker API spec:
  - Worker.terminate()
  - self.close()
  - self.name
2020-01-29 18:54:23 +01:00

21 lines
500 B
TypeScript

onmessage = function(e): void {
const { cmdId, action, data } = e.data;
switch (action) {
case 0: // Static response
postMessage({
cmdId,
data: "HTTP/1.1 200 OK\r\nContent-Length: 12\r\n\r\nHello World\n"
});
break;
case 1: // Respond with request data
postMessage({ cmdId, data });
break;
case 2: // Ping
postMessage({ cmdId });
break;
case 3: // Close
postMessage({ cmdId: 3 });
close();
break;
}
};