首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是什么原因导致libdispatch-manager线程发生这种崩溃?

是什么原因导致libdispatch-manager线程发生这种崩溃?
EN

Stack Overflow用户
提问于 2013-05-23 23:33:04
回答 2查看 11.4K关注 0票数 4
代码语言:javascript
复制
Date/Time: 2013-05-22 21:31:31.863 -0400  
OS Version: iOS 6.1.3 (10B329)  
Report Version: 104  

Exception Type: EXC_CRASH (SIGSEGV)  
Exception Codes: 0x0000000000000000, 0x0000000000000000  
Crashed Thread: 1  

Thread 0 name: Dispatch queue: com.apple.main-thread  
Thread 0:  
0 CoreFoundation 0x3203f950 -[NSArrayM dealloc] + 128    
1 Foundation 0x32999218 -[NSFunctionExpression dealloc] + 56  
2 Foundation 0x329991d8 -[NSKeyPathExpression dealloc] + 36  
3 Foundation 0x3299914c -[NSComparisonPredicate dealloc] + 40  
4 CoreData 0x31f6b672 -[NSFetchedResultsController(PrivateMethods) _managedObjectContextDidChange:] + 1362  
5 CoreFoundation 0x32045034 _CFXNotificationPost + 1424  
6 Foundation 0x3295b594 -[NSNotificationCenter postNotificationName:object:userInfo:] + 68  
7 CoreData 0x31ef9712 -[NSManagedObjectContext(_NSInternalNotificationHandling) _postObjectsDidChangeNotificationWithUserInfo:] + 74  
8 CoreData 0x31ef8c72 -[NSManagedObjectContext(_NSInternalChangeProcessing) _createAndPostChangeNotification:withDeletions:withUpdates:withRefreshes:] + 294  9 CoreData 0x31e7abf4 - [NSManagedObjectContext(_NSInternalChangeProcessing) _processRecentChanges:] + 2676  
10 CoreData 0x31e7a10a _performRunLoopAction + 266  
11 CoreFoundation 0x320c96ca __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION + 18  
12 CoreFoundation 0x320c79bc __CFRunLoopDoObservers + 272  
13 CoreFoundation 0x320c7d12 __CFRunLoopRun + 738  
14 CoreFoundation 0x3203aeb8 CFRunLoopRunSpecific + 352  
15 CoreFoundation 0x3203ad44 CFRunLoopRunInMode + 100    
16 GraphicsServices 0x35bef2e6 GSEventRunModal + 70  
17 UIKit 0x33f502fc UIApplicationMain + 1116  
18 MyApp 0x00003fd6 main (main.m:16)  
19 MyApp 0x00003f8c 0x1000 + 12172  

Thread 1 name: Dispatch queue: com.apple.libdispatch-manager  
Thread 1 Crashed:  
0 libsystem_kernel.dylib 0x3a486648 kevent64 + 24  
1 libdispatch.dylib 0x3a3b6974 _dispatch_mgr_invoke + 792  
2 libdispatch.dylib 0x3a3b6654 _dispatch_mgr_thread$VARIANT$mp + 32  
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-05-24 05:36:00

几乎可以肯定的是,这种崩溃实际上并没有发生在分派管理器线程上(尽管崩溃报告声称是这样的),因为它在kevent64系统调用的内核中被阻塞。

CrashReporter可能错误地识别了崩溃的线程,或者可能从外部向您的进程发送了SEGV信号。

如果除了您在这里列出的线程之外还有其他线程,那么有必要查看它们,看看是否可能是崩溃的线程,否则罪魁祸首就是主线程上的dealloc

票数 6
EN

Stack Overflow用户

发布于 2013-05-23 23:56:48

看起来您在NSFetchedResultsController中使用的谓词有问题。处理通知时出现问题,通知可能是在保存对托管对象上下文的更改时发布的通知。这就是堆栈跟踪所显示的全部内容。如果不看一些代码,就不可能回答在谓词中出了什么问题,以及为什么在这个时候会出现问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16718104

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档