1. Heap Viewer 如何使用
通过不断点击 Cause GC 进行刷新 App 内存更新,例如我们可以手动 GC 10~20次,查看 Heap Size 的内存波动情况,只要能稳定到一定数值,而不是不断累计增长,来排除内存泄露可能性。

2. 字段解释

| 列名 |
意义 |
| Heap Size |
堆栈分配给App的内存大小[非常重要的观察参数] |
| Allocated |
已经分配使用的内存大小 |
| Free |
空闲的内存大小 |
| % Used |
Allocated/Heap Size 使用率 |
| Objects |
对象数量 |

| 列名 |
意义 |
| free |
空闲的对象 |
| data object |
数据对象,类类型对象[非常重要的观察参数] |
| class object |
类类型的引用对象 |
| 1-byte array(byte[], boolean[]) |
一个字节的数组对象 |
| 2-byte array(short[], char[]) |
两个字节的数组对象 |
| 4-byte array(object[], int[], float[]) |
四个字节的数组对象 |
| 8-byte array(long, double[]) |
八个字节的数组对象 |
| non-java object |
非 java 对象 |
| 列名 |
意义 |
| Count |
数量 |
| Total Size |
总共占用的内存大小 |
| Smallest |
将对象占用内存的大小从小往大排,排在第一个的对象占用的内存大小 |
| Largest |
将对象占用的大小从小往大排,排在最后一个对象占用的内存大小 |
| Median |
将对象占用的大小从小往大排,排在中间的对象占用的内存大小 |
| Average |
平均值 |

相关文章: