1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-12-30 11:16:38 -05:00
denoland-deno/cli/js/ops/worker_host.ts

37 lines
884 B
TypeScript
Raw Normal View History

// Copyright 2018-2020 the Deno authors. All rights reserved. MIT license.
2020-07-06 21:45:39 -04:00
/* eslint-disable @typescript-eslint/no-explicit-any */
import { sendAsync, sendSync } from "./dispatch_json.ts";
2020-07-06 21:45:39 -04:00
interface CreateWorkerResponse {
id: number;
}
export function createWorker(
specifier: string,
hasSourceCode: boolean,
sourceCode: string,
useDenoNamespace: boolean,
name?: string
2020-07-06 21:45:39 -04:00
): CreateWorkerResponse {
return sendSync("op_create_worker", {
specifier,
hasSourceCode,
sourceCode,
name,
useDenoNamespace,
});
}
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);
}
2020-03-20 09:38:34 -04:00
export function hostGetMessage(id: number): Promise<any> {
return sendAsync("op_host_get_message", { id });
}