我必须以编程方式测试 Windows 上 Chrome 中某些页面的内存使用情况。
这是我的 Chrome 版本(60.0.3112.113 - 官方版本 - 64 位)
正在关注 Chromium Command Line Switches Documentation我使用 --enable-precise-memory-info
标志运行 Chrome:
然后在打开的 Chrome 实例中,我尝试检查 window.performance.memory.usedJSHeapSize
但看起来尽管有 --enable-precise-memory-info
标记,但此信息仍被分桶。
即使在 Chrome 任务管理器(Shift + Esc)中,我也看到每次执行以下命令后内存使用量增加了大约 1 Mb:
for(let i=0;i<100000;i++) {a.push('sdftgkljhghertyukytedtreut56ytirty7uikty' +i)}
我发现只有一个关于这个的过时讨论 issue即使问题存在,我也希望能在网上找到更多讨论。
如果我做错了什么——我的错误是什么?
如果不再支持此标志,那么新的正确方法是什么?
谢谢!
最佳答案
我没有找到 --enable-precise-memory-info
不起作用的原因,因此我们会提供任何帮助。
与此同时,我发现了另一种方法,我决定分享它。
我创建了一个 chrome 扩展,并在其 background.js 中为 chrome.processes.onUpdatedWithMemory
添加了一个监听器。
它为我提供了有关 chrome 进程的更新信息,包括内存使用情况(privateMemory
字段),但此解决方案有两个问题:
- 要使用 chrome.processes,我必须在 Dev channel only 上运行扩展程序.
- 以这种方式收集内存使用信息会导致 extra CPU usage .
关于javascript - Chrome --enable-precise-memory-info 不起作用并且 performance.memory 仍然是 bucketized,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46264685/