iOS SDWebImage多图片同时加载, 内存暴增导致崩溃解决方法

说实话很喜欢这种简单的画面风格, 今天突然心血来潮自己写了写

[[SDImageCache sharedImageCache] setShouldDecompressImages:NO];[[SDWebImageDownloader sharedDownloader] setShouldDecompressImages:NO]

这两句就能解决问题

原理:

我遇到这个问题的时候感觉大神们写的太啰嗦了,  简单来讲:

SDWebImage在加载图片的时候有一步减压缩的过程,  减压缩图片,并将图片存到cache使得之后的加载更加快,  效果更加好, 方便tableview等控件的数据交互,  提高滑动的流畅性。然而, 注意, 然而来了,  压缩这个过程, 图片分辨率特别高的时候占用的内存就会特别大, 1~2M的图片在压缩时会秒占300兆左右的内存, 还由于SDWebImage自己有线程处理,  比如同时给多个tabviewcell 里面的imageview做网络图片赋值时, 10多个图片一起走线程, 一起压缩, 你的应用占的内存有可能有20M瞬间变成1G, 可能还要多, 这种程度的暴增会被系统认为内存泄漏, 于是乎~~~~~~~~~~砰

我说的不对的地方请指正, 没有错误哪有进步~~~~

你可能感兴趣的:(iOS SDWebImage多图片同时加载, 内存暴增导致崩溃解决方法)