可能为了优化性能吧。 firefox、chrome、edge都是这样做的,在网页失去焦点大约5分钟后,定时器被降速为1分钟触发一次。
javascript脚本里面通过定时器,每秒钟向服务端发送一次心跳包。在网页失去焦点5分钟后,定时器降速,服务器每分钟才能收到一次心跳,如果判断时间门槛低于1分钟,就会误判客户端心跳丢失。
解决办法:
可以使用webworker进行替代。
可能为了优化性能吧。 firefox、chrome、edge都是这样做的,在网页失去焦点大约5分钟后,定时器被降速为1分钟触发一次。
javascript脚本里面通过定时器,每秒钟向服务端发送一次心跳包。在网页失去焦点5分钟后,定时器降速,服务器每分钟才能收到一次心跳,如果判断时间门槛低于1分钟,就会误判客户端心跳丢失。
解决办法:
可以使用webworker进行替代。