iOS开发---内存相关问题总结
来源:互联网 发布:龙华淘宝电商 编辑:程序博客网 时间:2024/06/07 03:03
导读:在iOS开发过程中,代码中的内存泄露会使得大量的内存被使用,最后收到didReceiveMemoryWarning,最终导致程序崩溃。以下是开发与面试过程中遇到的一些问题和网上的一些资料,总结了一下(后续会不断添加):
1.大次数循环内存暴涨问题
一道经典的面试题,查看如下代码有何问题:
for (int i =0; i <900000; i++) {
NSString *string =@"Abc";
string = [string lowercaseString];
string = [string stringByAppendingString:@"xyz"];
NSLog(@"%@", string);
}
原因:该循环内产生大量的临时对象,直至循环结束才释放,可能导致内存泄漏,解决方法为在循环中创建自己的autoReleasePool,及时释放占用内存大的临时变量,减少内存占用峰值。
解决办法:
for (int i =0; i <900000; i++) {
@autoreleasepool {
NSString *string =@"Abc";
string = [string lowercaseString];
string = [string stringByAppendingString:@"xyz"];
NSLog(@"%@", string);
}
}
0 0
- iOS开发---内存相关问题总结
- iOS开发C语言关于内存问题的总结
- IOS开发 相关尺寸总结
- IOS开发内存分析总结
- iOS开发内存管理总结
- iOS开发问题总结
- iOS开发问题总结
- iOS 开发证书相关问题
- Hadoop开发相关问题总结
- IOS开发(49)之关于 self与内存相关的用法总结
- iOS开发中的内存管理相关
- 【VS开发】内存泄漏相关问题
- 苹果ios开发相关步骤总结
- iOS开发中WiFi相关功能总结
- ios开发中WIFI相关功能总结
- iOS开发中WiFi相关功能总结
- ios开发中WIFI相关功能总结
- iOS开发中WiFi相关功能总结
- “跨库分页”的四种方案
- windows 下Keras中神经网络可视化模块安装配置方法
- 欢迎使用CSDN-markdown编辑器
- golang数据结构的标签
- Java23种设计模式详解
- iOS开发---内存相关问题总结
- Log4j 和 Slf4j 的介绍和使用
- 用css3,transform3d制作房屋全景展示效果(一)
- TCP/IP的四元组、五元组、七元组
- 通过oclint自动化codereview生成html文档步骤
- POJ1845Sumdiv(逆元or等比数列求和)
- java接口回调的实用技术
- Spring中ApplicationContextAware的理解
- MongoDB学习笔记001--常用操作速查笔记