Android的内存溢出是如何发生的?

2012-08-23  王涞 

       Android的虚拟机是基于寄存器的Dalvik,它的最大堆大小一般是16M,有的机器为24M。因此我们所能利用的内存空间是有限的。如果我们的内存占用超过了一定的水平就会出现OutOfMemory的错误。

为什么会出现内存不够用的情况呢?我想原因主要有两个:

  • 由于我们程序的失误,长期保持某些资源(如Context)的引用,造成内存泄露,资源造成得不到释放。
  • 保存了多个耗用内存过大的对象(如Bitmap),造成内存超出限制。
423°/4217 人阅读/2 条评论 发表评论

张丽丽  2012-08-23

Context是关联菜单吗?Bitmap是什么?


王涞  2012-08-23

张丽丽: Context是关联菜单吗?Bitmap是什么?
context为文本或元素,bitmap,位图,图片读取和显示,比如天籁歌手列表的图片加载


登录 后发表评论