Android 内存管理中的 Shallow heap Retained heap

news/2024/7/20 15:06:39 标签: 内存管理, 移动开发, java

所有包含Heap Profling功能的工具(MAT,Yourkit,JProfiler,TPTP等)都会使用到两个名词,一个是Shallow heap Size,另一个是 Retained heap Size. 

shallow heap:

Shallow heap size =对象自身占用的内存大小,不包括它引用的对象。 还会包括一些java语言特性的数据存储单元。
                 对于数组对象,它的大小是数组元素对象内存的总和。

Retained heap:

Retained heap size = 当前对象大小+当前对象可直接或间接引用到的对象的大小总和。
          (间接引用的含义:A->B->C, C 就是间接引用)
           Retained Size就是当前对象被GC后,从Heap上总共能释放的内存大小。
          释放大小需要减去被GC Roots直接或间接引用的对象。

 

 

假如虚线不存在:

shallow size 缩写:ss

retained size 缩写:rs

GC root 直接引用了A,B对象

ssA = rsA  同理D,E对象也如此

rsB =  ssB + ssD + ssC + ssE

rsC= ssC+ ssE

 虚线如果存在:

rsB = ssD + ssC

rsC= ssC

 

转载于:https://www.cnblogs.com/polo/p/9969835.html


http://www.niftyadmin.cn/n/1049266.html

相关文章

python中的工厂函数_Python flask工厂函数不是很理解请指导

flask web,说到了工厂函数,不是很理解,请大神来指教一下,上源码。app/init.py:程序包的构造文件from flask import Flask, render_templatefrom flask.ext.bootstrap import Bootstrapfrom flask.ext.mail import Mail…

Window开启上帝模式

所谓的上帝模式就是所有功能在一个文件下,方便、快捷地操作! 01、新建一个文件夹 02、重命名文件夹 文件夹重命名为“GodMode.{ED7BA470-8E54-465E-825C-99712043E01C}” 转载于:https://www.cnblogs.com/xiaochina/p/9971502.html

javabeans的运用

javabeans的运用 对javabean的使用我开始严重的郁闷,跟着书上说的做,但是总是不成功。后来别人说我是基础不牢靠。我觉得应该从servlet学起然后再加进入JSP学是非常快的,对于JAVABEAN在我看来和普通类差不多,只是多了一些很少的特…

什么是 IRC?

IRC是Internet Relay Chat 的英文缩写,中文一般称为互联网中继聊天。它是由芬兰人Jarkko Oikarinen于1988年首创的一种网络聊天协议。经过十年的发展,目前世界上有超过60个国家提供了IRC的服务。IRC的工作原理非常简单,您只要在自己的PC上运行…

高并发之API接口限流

在开发高并发系统时有三把利器用来保护系统:缓存、降级和限流 缓存的目的是提升系统访问速度和增大系统处理容量 降级是当服务出现问题或者影响到核心流程时,需要暂时屏蔽掉,待高峰或者问题解决后再打开限流的目的是通过对并发访问/请求进行限…

netty4_is not a @Sharable handler

2019独角兽企业重金招聘Python工程师标准>>> State management(handler的状态管理) A ChannelHandler often needs to store some stateful information. The simplest and recommended approach is to use member variables: public interfa…

VB6 Collection实现百万文本去重

上一篇数组的去重说到,对于千次计算以上的去重基本上特别的吃力,这里就介绍一种方法,通过Collection集合对象来过滤重复。 Option Explicit//By: InkHin// 参考:https://bbs.csdn.net/topics/350065116引用:Microsoft …

简单计算器(20)

模拟简单运算器的工作。假设计算器只能进行加减乘除运算,运算数和结果都是整数,4种运算符的优先级相同,按从左到右的顺序计算。 输入格式: 输入在一行中给出一个四则运算算式,没有空格,且至少有一个操作数。…