据Engadget 10月25日报道,谷歌Chrome浏览器长期被贴上“内存大户”标签,但该媒体称,这更多是网络流行说法,而非需要纠正的故障。Chrome占用较多内存,是因为它选择让每个标签页和网站运行在独立进程中,以换取更快的响应和更稳定的浏览体验。
报道称,今天的网站功能更接近应用,单个页面承载更多信息,用户还会同时打开多个标签页并运行扩展,这些都会推高内存需求。浏览器设计者需要在共享进程以节省内存,与为每个标签页分配独立进程以保持速度和稳定之间做选择,Chrome与许多浏览器一样选择后者。
这种做法的直接好处是,一个网站崩溃不会拖垮整个浏览器和其余已打开标签页。Chrome还将每个网站放在沙箱进程中运行,操作系统将进程隔离,降低恶意页面窥探银行或邮箱标签页内容的风险。报道称,这部分额外内存可视为标签页之间隔离墙的代价。
报道援引PCMag的说法称,对多数通用电脑而言8GB内存已经够用,是单个浏览器通常所需内存的数倍,因此内存有余量可供使用。文章还称,“未使用的内存才是浪费的内存”,浏览器把页面、媒体和预加载标签页放入内存,是在完成其应做的工作。
如果内存占用持续上升,可能是内存泄漏。Chrome内置任务管理器(Shift+Esc)可显示哪个标签页或扩展在占用内存。Chrome还提供内存节省模式,在“性能”设置中可将长时间未使用的标签页休眠并释放内存,用户也可把播放音乐等网站加入不休眠名单。
其他浏览器采取不同策略。报道称,微软Edge与Chrome一样基于Chromium,使用类似进程模型,但通过睡眠标签页和节能模式让闲置标签页休眠;Firefox将标签页分组到较少的共享进程,并在系统内存不足时卸载标签页。两者都是合理选择,但都不是彻底解决方案。
报道称,如果Chrome感觉变慢,不应只看内存数字,可打开浏览器任务管理器查看是否有标签页或扩展占用持续增长;若没有,Chrome是在按设计使用内存。若仍然卡顿,原因可能是硬盘接近装满或网络连接缓慢,重启浏览器是可先尝试的步骤。