Kingfisher是我们swift开发中非常常见的第三方库,因为在实际项目中,在设置maxMemoryCost中观察到内存增长到我们设置的数据时maxMemoryCost并没有进行很好的工作,因此针对这个问题笔者进行的一部分探索
一.测试准备
设备:iphone6s
参数选择:项目中加载851张图片,观察内存变化,因为项目属于不公开项目,因此有条件的开发者可以自行搭建测试项目
二.测试验证过程
1.maxMemoryCost有效性验证
首先,我们将使用Kingfisher加载大量的网络图片,以观察手机内存的使用情况,Kingfisher的maxMemoryCost的值我们设为82 * 1024 * 1024,即为Kingfisher设定使用的最大内存为82M
项目峰值状态:我们将Kingfisher加载851张图片时为峰值状态
以下是笔者从项目启动到加载到峰值状态下手机的内存变化
我们观察到手机内存从初始50M增加到239M