android开发之高效使用内存

1.android设备性能取决的因素

  Android设备和其上的应用使用的内存是有限的,使用尽可能少的内存,是非常必须的

(1)CPU如何操纵特定的数据类型

(2)数据和指令需要占用多少存储空间

(3)数据在内存中的布局

2. 数据类型的使用要点

(1)short数组排序远快于其他类型数组

(2)处理64位类型(long或double)比处理32位类型慢

(3)处理大量数据时,使用可以满足要求的最小数据类型

(4)避免类型转换


3.内存泄露

    只有当某个对象不再被引用时,它的内存才会被回收,当该被释放的对象引用仍然存在时就会发生内存泄露。

   Android2.3定义了StrictMode类,检测潜在的内存泄露有很大帮助,但只能检测SQLite对象没有关闭时产生的泄露。

   在Android3.0及以上的版本中,可以检测Activity泄露、其他对象泄露、对象没有关闭的泄露。

4.java定义了4中类型的引用:

(1)强(strong)

(2)软(Soft)

(3)弱(Weak)

(4)虚(Phantom)

5.垃圾收集(发生时间最终由Dalvik虚拟机决定,下面的情况会触发垃圾收集):

(1)GC_FOR_MALLOC:堆被占满不能进行内存分配时

(2)GC_CONCURRENT:垃圾可供回收时

(3)GC_EXPLICIT:显示调用System.gc()产生的垃圾收集

(4)GC_EXTERNAL_ALLOC:......

  (5)    GC_HPROF_DUMP_HEAP:发生在创建HPROF文件时

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值