我正在尝试使用Google DevTools获取我的JavaScript测试的堆使用情况的快照。我使用过这个网站:https://developers.google.com/chrome-developer-tools/docs/heap-profiling 以及Windows 7和谷歌浏览器。
问题是我需要在保留和浅大小下查看内存指标(字节与千字节),但它没有显示。我试着在网上看看,并且自己弄乱了DevTools,但似乎无法找到显示它的方法。
谷歌自己的网站就在这里:
到这里:
没有解释他们是如何做到的......现在我看到在第二张图片中,他们正在使用MacOS。这可能是为什么?我可以推断基于这两个图像的尺寸指标是什么,但我真的想知道。
这是我在使用DevTools时看到的内容:
感谢您的帮助。
答案 0 :(得分:1)
带有“保留路径”的屏幕截图已经过时了。新版本显示保留树。 我已经创建了一个关于此的错误。 https://code.google.com/p/chromium/issues/detail?id=240872
如果在上部窗口中选择特定对象,保留树将为非空。
如果对象A是另一个对象B的唯一保留器,而第二个对象是100Mb阵列C的唯一保留器,那么您将在列表中看到三个对象。
保留尺寸的小物体A =尺寸C +尺寸B +尺寸A = ~100Mb。
保留尺寸的小物体B =尺寸C =尺寸B = ~100Mb但小于A的保留尺寸。
大尺寸C,尺寸较小=保留尺寸= 100Mb。
同时堆的总大小将等于对象A的保留大小。 因此,保留的大小或百分比的总和是奇怪的数字,这意味着什么。
如果删除B和C之间的链接,则会收集C.
如果删除A和B之间的链接,将收集B和C.
如果您将链接丢弃到A,则会收集A和B以及C.
如果您创建从对象D到C的链接并拍摄另一个快照,则A和B的保留大小会变小,因为如果删除B和C之间或A和B之间的链接或从到A的某个地方,因为有一个从D到C的链接。
请参阅yourkit的文档http://www.yourkit.com/docs/80/help/sizes.jsp
答案 1 :(得分:1)
在学习使用分析器时我问的第一件事。荒谬的是它仍然没有被正确标记。
Note: Both the Shallow and Retained size columns represent data in bytes.