javascript - Node.js中setTimeout的最大时间限制

标签 javascript node.js heroku settimeout v8

我已经在 Node 中注册了一些 setTimeout 函数,如下所示。

//Formula: minutes * 60 > seconds * 1000 > miliseconds.
setTimeout(() => {console.log("One minute")}, 1 * 60 * 1000)        //delay 60000
setTimeout(() => {console.log("Five minutes")}, 5 * 60 * 1000)      //delay 300000
setTimeout(() => {console.log("Ten minutes")}, 10 * 60 * 1000)      //delay 600000
setTimeout(() => {console.log("Thirty minutes")}, 30 * 60 * 1000)   //delay 1800000
setTimeout(() => {console.log("One hour")}, 60 * 60 * 1000)         //delay 3600000
setTimeout(() => {console.log("Two hours")}, 120 * 60 * 1000)       //delay 7200000
setTimeout(() => {console.log("Five hours")}, 300 * 60 * 1000)      //delay 18000000

现在的问题是,当我阅读 setTimeout 文档时,需要超过 10 分钟setTimeout 不起作用,它支持 24.8 天

When delay is larger than 2147483647 or less than 1, the delay will be set to 1

enter image description here

所有延迟值都小于 2147483647,为什么它不工作???

最佳答案

最后,当我在 node.js 存储库上创建问题时,我得到了答案,基本上不是node.js,而是heroku问题。
在 Heroku 中,免费 dyno 是独一无二的,因为它们在 30 分钟不活动后进入休眠状态,因此超过 30 分钟的时间不工作
Github issue

关于javascript - Node.js中setTimeout的最大时间限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52294430/

相关文章:

javascript - 带字幕的多图像文件上传

javascript - webpack 为浏览器编译 javascript

javascript - javascript 表单提交后的 Onsubmit 事件

javascript - HTML5 日期选择器防止过去的日期

node.js - 如何使用工作线程实现网络自动化目的的 puppeteer 多线程

node.js - 统计 Mongo 中引用对象的数量

node.js - 在终端中无法访问全局安装的 npm 包

javascript - Heroku "Invalid Host header"HOST 配置中的 ReactJS APP?

php - Laravel 产品,CORS 编号 'Access-Control-Allow-Origin' header

ruby-on-rails - Hartl 的 Rails 教程完成的作品局部完美。 Heroku 始终显示 "We',抱歉,但出了点问题。”