Chrome浏览器下,tab不在激活状态或者浏览器最小化时页面内存占用增大,切换至当前tab显示时内存占用就突然减小

发布于 2022-09-11 19:18:58 字数 690 浏览 20 评论 0

问题描述

网站使用React编写,Websocket推送数据给前端展示(数据推送有时候会比较频繁)。
当网站的tab不在激活状态(浏览其他tab)或者最小化浏览器时,任务管理器中内存占用会逐渐增大(注意是内存占用,不是Javascript占用的内存),切换到当前页面时内存占用会突然减小。如果放一个晚上,内存占用第二天会增长到1G以上,Windows下有时候会直接页面崩溃
图片描述
图片描述
其实切换显示页面后一瞬间页面cpu有点高,截图没有截取到,很快就恢复正常了。

问题出现的环境背景及自己尝试过哪些方法

只有Chrome下会出现这个bug,Windows以及Mac上都可以复现。

尝试过使用devtool的performance以及内存快照来debug,但是js占用的内存上正常的(增大然后垃圾回收),不正常的是页面内存。

还通过修改代码的排除法,猜测原因和react-visibility-sensor这个插件有关,但是无法确定原因。因为隐私保密关系不能提供在线地址。

想知道是什么原因会导致Chrome下页面内存占用增大而js内存正常的原因。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文