Android中的bitmap存在哪里

2019-04-25  本文已影响0人  Fakecoder_Sunis

其实这个官方有很明确的说明,但是之前看过别人写的一些文章,是错的,怎么说的都有,导致自己记忆起来也是乱七八糟。 所以现在排净脑子中之前的垃圾信息,从新记忆 官方Managing Bitmap Memory一文中指出:

是不是很明显,白纸黑字。
1 android2.2(API level 8)和更早的版本,垃圾回收时,会阻塞UI线程,造成卡顿。
而2.3(API level 9)开始增加了并行的垃圾回收机制,可以让应用得到更好的体验。

2 android2.3.3(API level 10)和更早的版本,bitmap对象和对象里对应的像素数据是分开存储的,bitmap存在虚拟机的堆里,而像素数据存储在native内存里。
从android3.0(API level 11)到android7.1(API level 25),bitmap对象及其像素数据都存储在虚拟机的堆里。
从android8.0(API level 26)开始,bitmap对象存储在虚拟机的堆里,而对应的像素数据存储在native堆里。

上一篇下一篇

猜你喜欢

热点阅读