feature: vor und nachteile

This commit is contained in:
Hikyu
2026-05-31 13:54:31 +02:00
parent 552a947a1c
commit e3dad17446
23270 changed files with 3024794 additions and 200 deletions
+26
View File
@@ -0,0 +1,26 @@
import vm from 'node:vm';
export default function functionTimeout(function_, {timeout} = {}) {
const script = new vm.Script('returnValue = function_()');
const wrappedFunction = (...arguments_) => {
const context = {
function_: () => function_(...arguments_),
};
script.runInNewContext(context, {timeout});
return context.returnValue;
};
Object.defineProperty(wrappedFunction, 'name', {
value: `functionTimeout(${function_.name || '<anonymous>'})`,
configurable: true,
});
return wrappedFunction;
}
export function isTimeoutError(error) {
return error?.code === 'ERR_SCRIPT_EXECUTION_TIMEOUT';
}