关于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

相关推荐
风曦Kisaki18 小时前
# Linux Shell 编程入门 Day01:Shell 基础认知、脚本编写规范、变量四大类型、数值运算
linux·运维·chrome
APIshop20 小时前
1688 跨境寻源通详情接口深度解析:从接入到实战
前端·网络·chrome
IMPYLH1 天前
Linux 的 sum 命令
linux·运维·服务器·chrome·python·bash
计算机安禾1 天前
【Linux从入门到精通】第25篇:循环结构——重复造轮子的终结者
linux·运维·chrome
计算机安禾1 天前
【Linux从入门到精通】第24篇:流程控制——if-else与case分支
linux·运维·chrome
鸽芷咕1 天前
KingbaseES NFS部署实战:环境变量缺失与权限报错排查指南
前端·chrome
SparkleN.2 天前
mini-agent四个问题完善
前端·chrome·github
尘世壹俗人2 天前
如何检查服务器上消耗资源的程序是那个
服务器·前端·chrome
计算机安禾2 天前
【Linux从入门到精通】第22篇:Shell变量与数据类型——数字与字符串处理
linux·运维·chrome