报错:Collection <__NSCFDictionary: 0xc425570> was mutated while being enumerated.
2013-01-16 18:24
381 查看
错误:Terminating app due to uncaught exception 'NSGenericException', reason:
'*** Collection <__NSCFDictionary: 0xc425570> was mutated while being enumerated.
因为我在枚举menuList可变数组的时候,给menuList添加元素,那这个数组的大小发生了变化,不知道枚举多少次了。
一般2种情况会发生这种错误:
1,对可变数组A在枚举的时候,添加或者删除数组A的元素,改变了数组A的大小。
2,对于数组B,一个线程在对B进行枚举操作,另一个线程改变B数组的大小。
错误:Terminating app due to uncaught exception 'NSGenericException', reason:
'*** Collection <__NSCFDictionary: 0xc425570> was mutated while being enumerated.
答案:原因是NSArry若在多线程中进行操作是很敏感的。
如果在某个线程,对A NSArry进行写操作。在另外某线程读取A操作,就会出现“Collection was mutated while being enumerated”的错误警告。
解决办法可以,B= [NSArray arrayWithArray: A],再通过B来进行操作
'*** Collection <__NSCFDictionary: 0xc425570> was mutated while being enumerated.
因为我在枚举menuList可变数组的时候,给menuList添加元素,那这个数组的大小发生了变化,不知道枚举多少次了。
一般2种情况会发生这种错误:
1,对可变数组A在枚举的时候,添加或者删除数组A的元素,改变了数组A的大小。
2,对于数组B,一个线程在对B进行枚举操作,另一个线程改变B数组的大小。
错误:Terminating app due to uncaught exception 'NSGenericException', reason:
'*** Collection <__NSCFDictionary: 0xc425570> was mutated while being enumerated.
答案:原因是NSArry若在多线程中进行操作是很敏感的。
如果在某个线程,对A NSArry进行写操作。在另外某线程读取A操作,就会出现“Collection was mutated while being enumerated”的错误警告。
解决办法可以,B= [NSArray arrayWithArray: A],再通过B来进行操作
相关文章推荐
- Collection <__NSCFDictionary: 0xc425570> was mutated while being enumerated.
- 【学习ios之路:Objective-C错误】Collection <__NSArrayM: 0xb550c30> was mutated while being enumerated.
- 解决Collection <__NSArrayM: 0xb550c30> was mutated while being enumerated.-
- iOS 报错Collection <__NSArrayM: 0x7fdf0b8154c0> was mutated while being enumerated.'
- Collection <__NSArrayM: 0xxxxxxx> was mutated while being enumerated.
- 解决Collection <__NSArrayM: 0xb550c30> was mutated while being enumerated.-
- Collection <__NSArrayM: 0xaf88c50> was mutated while being enumerated.的解决办法
- 解决 Crash:Collection <__NSArrayM: 0x61000024df50> was mutated while being enumerated
- 【错误处理:】Collection <__NSArrayM: 0x12ec10e0> was mutated while being enumerated.
- Bug-iOS: Collection <__NSArrayM: 0x> was mutated while being enumerated.
- 解决Collection <__NSArrayM: 0xb550c30> was mutated while being enumerated.-
- 解决Collection <__NSArrayM: 0xb550c30> was mutated while being enumerated.-
- reason: ‘*** Collection <__NSArrayM: 0xb550c30> was mutated while being enumerated
- *** Collection <__NSArrayM: 0x7f9fb3c48bc0> was mutated while being enumerated问题
- 【Bug-iOS】Collection <__NSArrayM: 0x> was mutated while being enumerated.
- Bug-iOS: Collection <__NSArrayM: 0x> was mutated while being enumerated.
- Collection <__NSArrayM: 0xb550c30> was mutated while being enumerated.-
- iOS之解决崩溃Collection <__NSArrayM: 0xb550c30> was mutated while being enumerated.
- Collection <__NSArrayM: 0xxxxxxx> was mutated while being enumerated.
- 解决Collection <__NSArrayM: 0xb550c30> was mutated while being enumerated.-