1 | ;
|
2 | Object.defineProperty(exports, "__esModule", { value: true });
|
3 | exports.runWorker = void 0;
|
4 | const worker_threads_1 = require("worker_threads");
|
5 | async function runIfWorker() {
|
6 | if (!worker_threads_1.isMainThread) {
|
7 | worker_threads_1.parentPort?.postMessage(`${worker_threads_1.workerData} done`);
|
8 | }
|
9 | }
|
10 | runIfWorker();
|
11 | async function runWorker(arg) {
|
12 | return new Promise((resolve, reject) => {
|
13 | const worker = new worker_threads_1.Worker(__filename, { workerData: arg });
|
14 | worker.on("message", resolve);
|
15 | worker.on("error", reject);
|
16 | worker.on("exit", code => {
|
17 | if (code !== 0) {
|
18 | reject(new Error(`Worker stopped with exit code ${code}`));
|
19 | }
|
20 | });
|
21 | });
|
22 | }
|
23 | exports.runWorker = runWorker;
|
24 | //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vdGVzdC9maXh0dXJlcy93b3JrZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbURBQThFO0FBRTlFLEtBQUssVUFBVSxXQUFXO0lBQ3RCLElBQUksQ0FBQyw2QkFBWSxFQUFFO1FBQ2YsMkJBQVUsRUFBRSxXQUFXLENBQUMsR0FBRywyQkFBVSxPQUFPLENBQUMsQ0FBQztLQUNqRDtBQUNMLENBQUM7QUFFRCxXQUFXLEVBQUUsQ0FBQztBQUVQLEtBQUssVUFBVSxTQUFTLENBQUMsR0FBVztJQUN2QyxPQUFPLElBQUksT0FBTyxDQUFTLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFO1FBQzNDLE1BQU0sTUFBTSxHQUFHLElBQUksdUJBQU0sQ0FBQyxVQUFVLEVBQUUsRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQztRQUMzRCxNQUFNLENBQUMsRUFBRSxDQUFDLFNBQVMsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUM5QixNQUFNLENBQUMsRUFBRSxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQztRQUMzQixNQUFNLENBQUMsRUFBRSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsRUFBRTtZQUNyQixJQUFJLElBQUksS0FBSyxDQUFDLEVBQUU7Z0JBQ1osTUFBTSxDQUFDLElBQUksS0FBSyxDQUFDLGlDQUFpQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUM7YUFDOUQ7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUMsQ0FBQyxDQUFDO0FBQ1AsQ0FBQztBQVhELDhCQVdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNNYWluVGhyZWFkLCBwYXJlbnRQb3J0LCBXb3JrZXIsIHdvcmtlckRhdGEgfSBmcm9tIFwid29ya2VyX3RocmVhZHNcIjtcblxuYXN5bmMgZnVuY3Rpb24gcnVuSWZXb3JrZXIoKSB7XG4gICAgaWYgKCFpc01haW5UaHJlYWQpIHtcbiAgICAgICAgcGFyZW50UG9ydD8ucG9zdE1lc3NhZ2UoYCR7d29ya2VyRGF0YX0gZG9uZWApO1xuICAgIH1cbn1cblxucnVuSWZXb3JrZXIoKTtcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHJ1bldvcmtlcihhcmc6IHN0cmluZykge1xuICAgIHJldHVybiBuZXcgUHJvbWlzZTxzdHJpbmc+KChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgICAgY29uc3Qgd29ya2VyID0gbmV3IFdvcmtlcihfX2ZpbGVuYW1lLCB7IHdvcmtlckRhdGE6IGFyZyB9KTtcbiAgICAgICAgd29ya2VyLm9uKFwibWVzc2FnZVwiLCByZXNvbHZlKTtcbiAgICAgICAgd29ya2VyLm9uKFwiZXJyb3JcIiwgcmVqZWN0KTtcbiAgICAgICAgd29ya2VyLm9uKFwiZXhpdFwiLCBjb2RlID0+IHtcbiAgICAgICAgICAgIGlmIChjb2RlICE9PSAwKSB7XG4gICAgICAgICAgICAgICAgcmVqZWN0KG5ldyBFcnJvcihgV29ya2VyIHN0b3BwZWQgd2l0aCBleGl0IGNvZGUgJHtjb2RlfWApKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfSk7XG59XG4iXX0= |
\ | No newline at end of file |