iOS 7-only:NSMapTable崩溃

时间:2014-06-17 10:16:00

标签: ios objective-c crash

我在NSMapTable中保留了类似内存缓存的内容:

// check for nils
if (key && image) {
    // set object to NSMapTable
    [_mapTable setObject:object forKey:key]; // crash
}

不幸的是,最近我对这种方法遇到了一些问题。碰撞很少发生,仅在iOS 7上发生.Crashlog表示它发生在上面的行并显示更多细节:

-- Crashed: com.apple.root.default-priority ---
SIGABRT ABORT at 0x123456789

--- call stack ---
0    
libsystem_kernel.dylib  
__pthread_kill + 8
1
libsystem_pthread.dylib 
pthread_kill + 58
2
libsystem_c.dylib   
abort + 76
3    
libsystem_malloc.dylib  
free + 382
4
Foundation  
-[NSConcreteMapTable grow] + 546
5
Foundation  
-[NSConcreteMapTable setObject:forKey:] + 140

事实上,只有4& 5给出任何信息。我不知道这里有什么问题。因为它只发生在iOS7中,也许它是Apple的bug?任何想法可能是什么原因?

0 个答案:

没有答案