大家好,我遇到一个很奇怪的问题:实际内存只有20M左右,但当打开新界面,使用SDWebImage下载图片后,实际内存不怎么变化,虚拟内存增加很多,操作多次后,虚拟内存350M左右,程序崩溃。求解。 iOS版本为7.1.1
图片尺寸?
1楼 @tinyfool 这个和图片尺寸有关系吗?谢谢。
2楼 @maoyu 有没有关系,你先提供信息,别人才好帮你诊断......
1楼 @tinyfool 图片尺寸比较大,大概有640640的,也有1000多1000多
3楼 @tinyfool 我刚问后台的同事,服务器原图也有2000多乘2000多像素的图片
5楼 @maoyu 这样的话,多半就是这个问题了,一般的图片库会把图片读到内存,不要看2000*2000在文件上不大,但是解压成内存图片以后就很大了。你的问题是你要怎么处理图片,要根据这个来设计流程,不要直接load这么大的图片
当然诊断的最好办法是学好instrument
6楼 @tinyfool 但是为什么不占用实际内存,而是占用虚拟内存呢?
7楼 @tinyfool 我是在instrument下进行查看的,实际内存不怎么变,虚拟内存变的很快。谢谢你,我再了解下instrument.
8楼 @maoyu 直接问这种问题意义不大,如果你对虚拟内存和实际内存的机理不懂的话,简单的说,就是这个图形库写的还不错,实现考虑到了图片可能很大,尽量不用实际内存,因为实际内存往往比虚拟的小,但是你的图片太大了,连虚拟的都放不下了。
AltStyle によって変換されたページ (->オリジナル) / アドレス: モード: デフォルト 音声ブラウザ ルビ付き 配色反転 文字拡大 モバイル