diff options
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 }); +} |