我必须以编程方式测试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
旗帜这个信息仍然是bucketized。
即使在Chrome任务管理器(Shift + Esc)中,我看到每次执行后内存使用量增长约1 Mb:
for(let i=0;i<100000;i++) {a.push('sdftgkljhghertyukytedtreut56ytirty7uikty' +i)}
我发现只有一个关于此issue的过时讨论,即使问题存在,我希望能在网上找到更多的讨论。
如果我做错了什么 - 我的错误是什么?
如果不再支持此标志,那么新的正确方法是什么?
谢谢!
答案 0 :(得分:2)
我没有找到--enable-precise-memory-info
不起作用的原因,因此任何有关这方面的帮助都会被批准。
与此同时,我发现了另一种方法,我决定分享它。
我创建了一个chrome扩展,并在其background.js中为chrome.processes.onUpdatedWithMemory
添加了一个监听器。
它向我提供了有关Chrome进程的最新信息,包括内存使用情况(privateMemory
字段),但此解决方案有两个问题:
答案 1 :(得分:0)
现在,在Chrome 68+中,您可以每50毫秒对源自与网页(eTLD + 1)相同来源的脚本进行一次采样。这意味着您可能不再需要--enable-precise-memory-info
。
https://chromium.googlesource.com/chromium/src/+/7c7847f69de403f6c798dfccba10812039a60480
答案 2 :(得分:-1)
也许您需要在运行/ Applications / Google \ Chrome.app/Contents/MacOS/Google \ Chrome --enable-precise-memory-info
之前关闭所有打开的Chrome窗口(cmd + q)