防止在 NodeJS 中同时运行两个函数实例

prevent running two function instances simultaneously in nodejs

本文关键字:两个 实例 函数 运行 NodeJS      更新时间:2023-09-26

我正在使用 rest 接口来执行一个可能需要一些时间的进程,一旦进程启动,另一个实例应该无法启动,而只是返回该进程正在进行中的通知。

有没有办法在不使用锁(文件或数据库)的情况下监视正在执行的进程(运行状态)?

也许这会起作用

var isRunning = false;
function doStuff(){
    if(isRunning){
        return 'this function is already running';
    }
    isRunning = true;
    // do things with a promise or whatever.then(function(){
        isRunning = false;
    })
}