UNPKG

faastjs

Version:

Serverless batch computing made simple.

24 lines 2.79 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.runWorker = void 0; const worker_threads_1 = require("worker_threads"); async function runIfWorker() { if (!worker_threads_1.isMainThread) { worker_threads_1.parentPort?.postMessage(`${worker_threads_1.workerData} done`); } } runIfWorker(); async function runWorker(arg) { return new Promise((resolve, reject) => { const worker = new worker_threads_1.Worker(__filename, { workerData: arg }); worker.on("message", resolve); worker.on("error", reject); worker.on("exit", code => { if (code !== 0) { reject(new Error(`Worker stopped with exit code ${code}`)); } }); }); } exports.runWorker = runWorker; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vdGVzdC9maXh0dXJlcy93b3JrZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbURBQThFO0FBRTlFLEtBQUssVUFBVSxXQUFXO0lBQ3RCLElBQUksQ0FBQyw2QkFBWSxFQUFFLENBQUM7UUFDaEIsMkJBQVUsRUFBRSxXQUFXLENBQUMsR0FBRywyQkFBVSxPQUFPLENBQUMsQ0FBQztJQUNsRCxDQUFDO0FBQ0wsQ0FBQztBQUVELFdBQVcsRUFBRSxDQUFDO0FBRVAsS0FBSyxVQUFVLFNBQVMsQ0FBQyxHQUFXO0lBQ3ZDLE9BQU8sSUFBSSxPQUFPLENBQVMsQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLEVBQUU7UUFDM0MsTUFBTSxNQUFNLEdBQUcsSUFBSSx1QkFBTSxDQUFDLFVBQVUsRUFBRSxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDO1FBQzNELE1BQU0sQ0FBQyxFQUFFLENBQUMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQzlCLE1BQU0sQ0FBQyxFQUFFLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQzNCLE1BQU0sQ0FBQyxFQUFFLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxFQUFFO1lBQ3JCLElBQUksSUFBSSxLQUFLLENBQUMsRUFBRSxDQUFDO2dCQUNiLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQyxpQ0FBaUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQy9ELENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUMsQ0FBQyxDQUFDO0FBQ1AsQ0FBQztBQVhELDhCQVdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNNYWluVGhyZWFkLCBwYXJlbnRQb3J0LCBXb3JrZXIsIHdvcmtlckRhdGEgfSBmcm9tIFwid29ya2VyX3RocmVhZHNcIjtcblxuYXN5bmMgZnVuY3Rpb24gcnVuSWZXb3JrZXIoKSB7XG4gICAgaWYgKCFpc01haW5UaHJlYWQpIHtcbiAgICAgICAgcGFyZW50UG9ydD8ucG9zdE1lc3NhZ2UoYCR7d29ya2VyRGF0YX0gZG9uZWApO1xuICAgIH1cbn1cblxucnVuSWZXb3JrZXIoKTtcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHJ1bldvcmtlcihhcmc6IHN0cmluZykge1xuICAgIHJldHVybiBuZXcgUHJvbWlzZTxzdHJpbmc+KChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgICAgY29uc3Qgd29ya2VyID0gbmV3IFdvcmtlcihfX2ZpbGVuYW1lLCB7IHdvcmtlckRhdGE6IGFyZyB9KTtcbiAgICAgICAgd29ya2VyLm9uKFwibWVzc2FnZVwiLCByZXNvbHZlKTtcbiAgICAgICAgd29ya2VyLm9uKFwiZXJyb3JcIiwgcmVqZWN0KTtcbiAgICAgICAgd29ya2VyLm9uKFwiZXhpdFwiLCBjb2RlID0+IHtcbiAgICAgICAgICAgIGlmIChjb2RlICE9PSAwKSB7XG4gICAgICAgICAgICAgICAgcmVqZWN0KG5ldyBFcnJvcihgV29ya2VyIHN0b3BwZWQgd2l0aCBleGl0IGNvZGUgJHtjb2RlfWApKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfSk7XG59XG4iXX0=