美文网首页
Shallow Size、Retained Size、Heap

Shallow Size、Retained Size、Heap

作者: Aaab陈 | 来源:发表于2018-04-18 11:48 被阅读0次

    本文参考于
    https://blog.csdn.net/yincheng886337/article/details/50517375
    仅用于个人学习总结,如有侵权,联系删除

    Shallow Size及Retained Size

    Shallow Size = 对象本身所占内存大小
    Retained Size =( 对象本身 + 仅被该对象直接引用或间接引用对象)的Shallow Size

    Retained Size == 该对象被GC回收的内存总和

    举例以下Reference chain关系图

    image.png

    左图,obj1的Retained Size = (obj1 + obj2 + obj3)的Shallow Siz
    右图,obj1的Retained Size = (obj1 + obj2 + obj3 + obj4)的Shallow Size

    该图的额外说明:

    从obj1入手,蓝色节点代表仅被该对象直接或间接引用,白色节点还包括被GC Roots引用,即使断了obj1到obj3的Reference chain(引用链),obj1被GC回收,obj3也不会被回收
    (GC会回收不与GC Roots的Reference chain相连的对象)
    image.png

    Heap Size

    堆的大小,当资源增加,堆空间增加,超过上限(如64M)会被杀掉

    Allocated Size

    堆中已分配大小,即App实际占用内存大小

    相关文章

      网友评论

          本文标题:Shallow Size、Retained Size、Heap

          本文链接:https://www.haomeiwen.com/subject/hdhvkftx.html