![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
内存
文章平均质量分 75
lengtianxue
这个作者很懒,什么都没留下…
展开
-
内存——Android中常见的内存泄漏
1 、Activity对象未被回收 1.1 静态变量引用Activity对象 通过静态变量引用Activty对象时,会导致Activty对象所占内存内漏。主要是因为,静态变量是驻扎在JVM的方法区,因此,静态变量引用的对象是不会被GC回收的,因为它们所引用的对象本身就是GC ROOT(这块不清楚的请参考我的另一篇文章《JVM理解其实并不难! 》)。即最终导致Activity对象转载 2016-08-29 13:40:07 · 331 阅读 · 0 评论 -
内存——静态变量导致内存泄漏
转自http://blog.csdn.net/u012810020/article/details/51726699 1、要不怎么说static关键字要慎用呢?来看看下面这段代码,Context对象为静态的,那么Activity就无法正常销毁,会常驻内存。 public class MainActivity extends Activity{ public st转载 2016-08-29 13:54:18 · 3540 阅读 · 0 评论 -
JVM——HotSpot
转自http://www.codeceo.com/article/something-about-jvm-memory.html?ref=myread JAVA虚拟机把管理的内存划分为几个不同的数据区。 Java堆 Java堆是被所有线程共享的一块内存区域,主要用于存放对象实例,Java虚拟机规范中有这样一段描述:所有的对象实例和数据都要在堆上进行分配。为对象分配内存就是把一块大转载 2016-09-04 15:19:46 · 240 阅读 · 0 评论 -
Java对象内存结构
转自http://www.importnew.com/1305.html 我们接下来的讨论也会基于32位的Sun公司的JVM。下面我介绍一些规则来辅助解释JVM如何组织对象在内存中的布局的。 没有实例属性的类的内存布局 在Sun JVM中,(除了数组之外的)对象都有两个机器字(words)的头部。第一个字中包含这个对象的标示哈希码以及其他一些类似锁状态和等标识信息,第二个字中包含转载 2016-09-07 16:09:20 · 261 阅读 · 0 评论 -
Java的Sizeof实现
转自http://www.importnew.com/1306.html 这个类库包含一个公共类:com.codeinstructions.sizeof.SizeOf,它实现了5个公共方法: static long deepSize(java.lang.Object object) – 计算给定对象的deep size。 static long deepSize(java.lang.Ob转载 2016-09-07 16:12:05 · 980 阅读 · 0 评论