在我的 Node.js 应用程序中,我使用 setInterval()
每 1 小时运行一次特定函数。该函数正常执行约 25 天,然后计时器停止触发。
25 天似乎非常接近 Node.js 的 TIMEOUT_MAX
(2^31 毫秒 ≈ 25 天),但我真的不明白为什么 setInterval()
应该在那之后停止执行。
更新:
我认为这可能是由 Node.js 中的以下错误引起的:setInterval callback function unexpected halt #22149
最佳答案
似乎错误 ( #22149 ) 已在 Node.js 10.9.0 中修复。
可能还值得注意的是,此错误似乎影响两者 setInterval()
和 setTimeout()
(如报告 here ) ,因此在回调函数中使用 setTimeout()
的解决方法将不起作用。
关于javascript - Node.js setInterval() 在 25 天后停止执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51835331/