You're Invited:Meet the Socket Team at BlackHat and DEF CON in Las Vegas, Aug 4-6.RSVP
Socket
Book a DemoInstallSign in
Socket

make-synchronous

Package Overview
Dependencies
Maintainers
1
Versions
5
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

make-synchronous - npm Package Compare versions

Comparing version

to
2.0.1

19

index.js

@@ -13,3 +13,4 @@ import {

function setupWorker(function_) {
parentPort.on('message', async ({arguments_, workerPort, semaphore}) => {
const {workerPort} = workerData;
parentPort.on('message', async ({arguments_, semaphore}) => {
try {

@@ -31,2 +32,6 @@ workerPort.postMessage({result: await function_(...arguments_)});

if (!cache) {
const {port1: mainThreadPort, port2: workerPort} = new MessageChannel();
mainThreadPort.unref();
workerPort.unref();
const code = `

@@ -41,12 +46,10 @@ import setupWorker from ${JSON.stringify(import.meta.url)};

workerData: {
workerPort,
[IS_WORKER_MARK]: true,
},
transferList: [workerPort],
});
worker.unref();
const {port1: mainThreadPort, port2: workerPort} = new MessageChannel();
mainThreadPort.unref();
workerPort.unref();
cache = {worker, mainThreadPort, workerPort};
cache = {worker, mainThreadPort};
}

@@ -58,6 +61,6 @@

return (...arguments_) => {
const {worker, mainThreadPort, workerPort} = createWorker();
const {worker, mainThreadPort} = createWorker();
const semaphore = new Int32Array(new SharedArrayBuffer(Int32Array.BYTES_PER_ELEMENT));
worker.postMessage({arguments_, semaphore, workerPort}, [workerPort]);
worker.postMessage({arguments_, semaphore});
Atomics.wait(semaphore, 0, 0);

@@ -64,0 +67,0 @@

{
"name": "make-synchronous",
"version": "2.0.0",
"version": "2.0.1",
"description": "Make an asynchronous function synchronous",

@@ -5,0 +5,0 @@ "license": "MIT",