diff options
author | Bartek IwaĆczuk <biwanczuk@gmail.com> | 2020-03-09 15:18:02 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-03-09 15:18:02 +0100 |
commit | 886f330ec8110a3eb72feb14353f353962179d2e (patch) | |
tree | f6b458afac30a18d5120396bed9b1e63ae6d8529 /cli/js/ops/worker_host.ts | |
parent | 1b6fc87b7188118896f797e5f0dab309775def71 (diff) |
reorg: move JS ops implementations to cli/js/ops/, part 2 (#4283)
Following JS ops were moved to separate files in cli/js/ops directory:
- io
- process
- worker_host
- web_worker
- plugins
- timers
- signal
- permissions
Diffstat (limited to 'cli/js/ops/worker_host.ts')
-rw-r--r-- | cli/js/ops/worker_host.ts | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/cli/js/ops/worker_host.ts b/cli/js/ops/worker_host.ts new file mode 100644 index 000000000..a409d2c77 --- /dev/null +++ b/cli/js/ops/worker_host.ts @@ -0,0 +1,29 @@ +// Copyright 2018-2020 the Deno authors. All rights reserved. MIT license. +/* eslint-disable @typescript-eslint/no-explicit-any */ +import { sendAsync, sendSync } from "./dispatch_json.ts"; + +export function createWorker( + specifier: string, + hasSourceCode: boolean, + sourceCode: string, + name?: string +): { id: number } { + return sendSync("op_create_worker", { + specifier, + hasSourceCode, + sourceCode, + name + }); +} + +export function hostTerminateWorker(id: number): void { + sendSync("op_host_terminate_worker", { id }); +} + +export function hostPostMessage(id: number, data: Uint8Array): void { + sendSync("op_host_post_message", { id }, data); +} + +export async function hostGetMessage(id: number): Promise<any> { + return await sendAsync("op_host_get_message", { id }); +} |