iOS内存警告浅析

在开发中,内存的资源是很宝贵的.所以合理的管理项目的内存是恨重要的.

 

在项目中,最消耗内存的,莫过于图片.我们都知道,最常用的获取图片的方式是[UIImage imageName:@"image"];是这种方式,这种方式有一个机制,就是自动的有缓存.还有一种常用的方式是:[UIImage imageWithContentsOfFile:"fileName"];这种方式是没有缓存的.总结:由上可知,如果你想获娶大的图片,再加上不常用到此图片,建议使用第二种方式来加载图片,这样效率会比较高.

回到正题:当在项目中发生内存警告,应该怎么办.

可以在代理类中重写下面的方法:(这个方法是在项目的内存发生警告的时候执行的,SDWebImageManager是SDWebImage框架的一个类.)

- (void)applicationDidReceiveMemoryWarning:(UIApplication *)application

{

    SDWebImageManager *manager = [SDWebImageManager sharedManager];

    // 1.如果有正在下载的图片,应该先取消下载

    [manager cancelAll];

    

    

    // 2.然后再清除内存中的图片

    [manager.imageCache clearMemory];

}

 

OKle

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。