weixin_42496857 2012-01-06 12:46
浏览 485
已采纳

android Bitmap.createScaleBitmap() 内存溢出

我用这个createScaleBitmap方法创建缩略图,将生成的图片放入缓存(自定义一个类,CacheManager,里面用一个若引用引用到一个bitmap的集合,限定了这个集合大小每次往里存的时候判断如果超出大小就先remove一个,然后再往里存一个),为嘛还会有内存溢出的情况,虽然几率不是很大,是不是remove以后它没有立马给我从内存释放掉吗,谁有好的解决办法呢

  • 写回答

3条回答 默认 最新

  • laopeng301 2012-01-06 13:22
    关注

    [code="java"]
    你这样remove集合是没用的
    你remove只是集合清空了···
    Android上的Bitmap对象销毁,可以借助recycle()方法显示让GC回收一个Bitmap对象,通常对一个不用的Bitmap可以使用下面的方式,如
    Java代码

    if(bitmapObject.isRecycled()==false) //如果没有回收   
             bitmapObject.recycle();      
    
    if(bitmapObject.isRecycled()==false) //如果没有回收            bitmapObject.recycle();    
    

    [/code]

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 #MATLAB仿真#车辆换道路径规划
  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
  • ¥15 数据可视化Python
  • ¥15 要给毕业设计添加扫码登录的功能!!有偿
  • ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
  • ¥15 微信公众号自制会员卡没有收款渠道啊
  • ¥15 stable diffusion
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条