2013-05-14 100 views
0

我想要使用Google DevTools获取JavaScript测试的堆使用情况快照。我使用这个网站:https://developers.google.com/chrome-developer-tools/docs/heap-profiling 以及Windows 7和谷歌浏览器。Google DevTools缺少UI信息

问题是,我需要看到保留和浅的大小下的内存指标(字节与千字节),但它没有显示。我试图在网上查找,并且自己与DevTools混淆,但似乎无法找到显示此方法的方法。 enter image description here

在这里:

谷歌自己的网站正好从这里去 enter image description here

没有解释他们是如何做到的......现在,我看到第二个图像中,他们使用的MacOS 。这可能是为什么?我可以推断出什么尺寸指标是基于这两张图片的,但我真的很想知道

这是我所看到的,当我去到DevTools: enter image description here

感谢您的帮助。

+0

如果没有人知道该怎么做,他们可能至少告诉我什么下浅,并保留大小的数字和百分比是什么意思?我知道Shallow和Retained的内存是什么,但我不知道这些数字或百分比代表什么,因为它们不能完全是字节,并且百分比没有加起来。我试图观看这个:http://www.youtube.com/watch?v = L3ugr9BJqIs,但他们跳过了这些列的含义。这个人在开始时说:“在我的机器上,对象是36个字节”,但这并不能解释更大的数字或百分比之间的空白。 – 2013-05-14 19:33:55

回答

1

'保留路径'的屏幕截图非常古老。新版本显示保留树。 我创建了一个关于此的错误。 https://code.google.com/p/chromium/issues/detail?id=240872

如果您在上部窗口中选择特定对象,则保留树将为非空。

如果对象A是另一个对象B的唯一保持器,第二个对象是100Mb数组C的唯一保持器,那么您将在列表中看到三个对象。

保留大小的小对象A = sizeof C + sizeof B + sizeof A =〜100Mb。

与保留尺寸的sizeof = C +的sizeof B =〜100Mb的但小于A.

并与浅尺寸大阵列下保温尺寸的小物体B =保留大小= 100MB。

与此同时堆的总大小将等于对象A的保留大小。 因此,保留的大小或百分比的总和就是没有意义的奇数。

如果删除B和C之间的链接,则会收集C。

如果删除A和B之间的链接,B和C将被收集。

如果将链接放到A上,则会收集A和B和C.

如果您创建从对象D到C的链接并拍摄其他快照,则A和B的保留大小会变小,因为如果删除B和C之间或A和B之间的链接,则不会收集C或从地方到一个因为从d到C

链接见yourkit http://www.yourkit.com/docs/80/help/sizes.jsp