iOS for 循环引起内存暴增

释放双眼,带上耳机,听听看~!
内存一直在增长
instrument查找原因

定位到具体方法,发现了这行的问题:

错误代码

由于self.defaultsArray是nil,而count是NSUInteger,所以count做了位运算,是64位机器下最大值。而刚好这个循环在做view添加操作,导致添加了无限个view。导致内存一直在增大。

总结:
1.count-1由于count是无符号值,所以算出的值应该是越界了。就像int在32位机器超出65535一样,结果不可预料。
2.循环还是使用enumerateObjectsUsingBlock方法,这个方法是多线程的,效率高。

人已赞赏
iOS文章

iOS Injection极速编译

2019-11-3 21:52:14

iOS文章

iOS tableView性能优化

2019-11-4 5:57:03

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
有新消息 消息中心
搜索