Files
airllm-fork-nodejs/node_modules/node-llama-cpp/dist/utils/signalSleep.js
2026-02-05 15:27:49 +08:00

20 lines
707 B
JavaScript

export function signalSleep(delay, abortSignal) {
return new Promise((accept, reject) => {
if (abortSignal?.aborted)
return void reject(abortSignal.reason);
let timeout = undefined;
function onAbort() {
reject(abortSignal?.reason);
clearTimeout(timeout);
abortSignal?.removeEventListener("abort", onAbort);
}
function onTimeout() {
accept();
timeout = undefined;
abortSignal?.removeEventListener("abort", onAbort);
}
abortSignal?.addEventListener("abort", onAbort);
timeout = setTimeout(onTimeout, delay);
});
}
//# sourceMappingURL=signalSleep.js.map