关于setInteval定时器在不同浏览器下表现差异

背景:

项目下用到websocket, 中间使用了setInterval 定时向服务端发送心跳包, 5s/次, 观察正常, 就将浏览器最小化后, 经过了两天, 周一过来查看, 咋才 5000次;

问题分析:

遇到这种简单的问题当然是请教一下GPT 来的最快最实际, 不出所料, 马上得到证实;

chrome 88 版本之后就加入了这个功能, 当标签页处于非活动状态时, 定时器的循环时间会被节流, 设置为 1分钟每次;

https://developer.chrome.com/blog/timer-throttling-in-chrome-88/

解决办法:

在启动命令后增加 --disable-background-timer-throttling 参数

例如: chrome.exe --disable-background-timer-throttling

相关推荐
NEKGod1 天前
Linux 文件篡改审计(auditctl 实战指南)
linux·运维·chrome
Waoooo19991 天前
谷歌云配置嵌套虚拟化
前端·chrome
hresh1 天前
两个 Chrome 窗口各 20 多个 tab 后,我把 tab-out 改成了更顺手的 TabNest
前端·chrome·后端
sghuter2 天前
Chrome如何重塑Web标准未来
前端·chrome
REDcker2 天前
Linux disown命令详解 后台作业脱管与终端退出
linux·运维·chrome
牛奶2 天前
浏览器藏了这么多神器,你居然不知道?
前端·chrome·api
John_ToDebug2 天前
从 Win10 到 Win11 22H2+:任务栏美化中的“蒙版”和“Hover 色块”渲染原理解析
c++·chrome·windows
Amos_Web2 天前
谷歌浏览器插件Brower-Books: 把整个浏览器变成你的云端书架
前端·chrome·产品
陈虚渊2 天前
浏览器自动化框架完全问答:从原理到自研实践
chrome·自动化·浏览器·webdriver bidi
John_ToDebug2 天前
Chromium 源码剖析:base::NoDestructor——更安全的静态单例解决方案
开发语言·c++·chrome