【发布时间】:2022-11-22 02:08:46
【问题描述】:
我在 X 秒后结束节点进程时遇到一些问题。
我尝试了一些这种性质的东西:
setTimeout(() => { process.exit(0) }, 5000)
我试过将 1 传递给.exit()。我试过.kill()和.abort()。我似乎无法找到解决方案!
我正在运行一个在 setTimeout 之后启动的循环。
循环看起来像这样:
let ran = 0;
while(true) {
ran++;
console.log(ran)
}
【问题讨论】:
-
在我的控制台中运行它对我来说很好。您要退出哪个进程?这个过程是如何创建的?
-
JavaScript 是单线程的。
setTimeout在最后一个函数完成后将一个新函数加入队列。剩下的脚本是如何构建的?它是否允许评估process.exit()? -
我正在运行一个无限循环,直到该计时器应该关闭并最终结束该过程。首先,我创建超时,然后启动循环。 While 和 For 循环是一样的。我只是简单地通过我的控制台运行 node index,js。
-
那行不通的。运行无限循环会阻塞线程。你能重组它吗?我们是
setTimeout的递归? -
你的意思是将循环放在超时内?有没有办法在循环运行时结束进程?
标签: javascript node.js