CNode

如何查看一个特定对象占用的内存大小?

问答
Mmeiwhu发布于8 年前最后回复8 年前6 回复4218 浏览0 收藏

如何查看一个特定对象占用的内存大小?

例如我定义一个对象

const obj = {
	hello: "world"
}

如何查看它占用的内存大小?

查看回复

回复 (6)

H
hyj1991#1·8 年前

堆快照 -> 想办法查找到这个对象看它的 retained size 大小。。。

M
meiwhu#2·8 年前
引用 hyj1991堆快照 想办法查找到这个对象看它的 retained size 大小。。。

@hyj1991 可以啊,我这样做了。但是有个问题,有两次的obj的retained size不一样大,这是为什么呢? 1.JPG 2.jpg 3.JPG

H
hyj1991#3·8 年前

@meiwhu 导出堆快照,自己计算下支配树,然后看下支配树下是节点哪些不一样导致的 retained size 不一样

M
meiwhu#4·8 年前
引用 hyj1991@meiwhu 导出堆快照,自己计算下支配树,然后看下支配树下是节点哪些不一样导致的 retained size 不一样

@hyj1991

估算大小的话只看上边的Constructor栏目下面的数据就行了吧,下面Retainers栏目的很奇怪。 我知道怎么查看这个对象占用内存就行了,总之谢谢你了😀

yy.JPG

H
hyj1991#5·8 年前

@meiwhu retainer 指的是引用者,因为排查内存泄漏的时候有可能需要看是谁在引用这个对象

参与回复
登录后即可参与回复。登录