java - 使用glide加载图片出现内存溢出
问题描述
Pending exception java.lang.OutOfMemoryError: Failed to allocate a 1125012 byte allocation with 784248 free bytes and 765KB until OOMcom.bumptech.glide.load.resource.bitmap.RecyclableBufferedInputStream, android.graphics.BitmapFactory$Options, com.bumptech.glide.load.engine.bitmap_recycle.BitmapPool, int, int, int, com.bumptech.glide.load.DecodeFormat) (Downsampler.java:217)at android.graphics.Bitmap com.bumptech.glide.load.resource.bitmap.Downsampler.decode(java.io.InputStream, com.bumptech.glide.load.engine.bitmap_recycle.BitmapPool, int, int, com.bumptech.glide.load.DecodeFormat) (Downsampler.java:151)at com.bumptech.glide.load.engine.Resource com.bumptech.glide.load.resource.bitmap.StreamBitmapDecoder.decode(java.io.InputStream, int, int) (StreamBitmapDecoder.java:50)at com.bumptech.glide.load.engine.Resource com.bumptech.glide.load.resource.bitmap.StreamBitmapDecoder.decode(java.lang.Object, int, int) (StreamBitmapDecoder.java:19)at com.bumptech.glide.load.engine.Resource com.bumptech.glide.load.resource.bitmap.ImageVideoBitmapDecoder.decode(com.bumptech.glide.load.model.ImageVideoWrapper, int, int) (ImageVideoBitmapDecoder.java:39)
谁有解决方法,发给我谢谢
问题解答
回答1:看这个log并不能发现什么,图片加载出现oom是非常高概率的。请仔细判断1)是否连续的加载了大图而没有及时回收?2)是否哪里内存泄漏了?可以尝试用LeakCanary检查下内存泄漏,或者用工具持续检查内存占用状况
相关文章:
1. docker start -a dockername 老是卡住,什么情况?2. java内存模型的happens-before语义顺序问题3. java - 配置tomcat免安装版,无法启动 返回错误码44. python运行后没有任何反馈要怎么排查5. java - 关于i++的一个题目6. web - nginx为什么上传了网页文件也无法访问?7. linux - 阿里云服务器(centos)中svn同步web目录的问题?8. java - 判断数据在数据库中是否已存在.9. java - 并发操作下关于队列的疑问?10. javascript - Webpack 关于less依赖的问题
