0

我不断收到 NSFetchedResultsControllerDelegate 的此错误。
不知道如何处理它,因为它偶尔发生。

我确实创建了同步的记录,但仍然..

任何想法为什么会这样?

- (Activity *)createActivityWithDictionary:(NSDictionary*)dict
{
    @synchronized([DBController sharedManaged])
    {
        Activity *act = [Activity activityWithDictionary:dict inManagedObjectContext:self.managedObjectContext];
        [self saveContext];
        return act;
    }
}


Date/Time:       2012-09-18 22:55:53.686 -0700
OS Version:      iPhone OS 5.1.1 (9B206)
Report Version:  104

Exception Type:  EXC_CRASH (SIGABRT)
Exception Codes: 0x00000000, 0x00000000
Crashed Thread:  0

Last Exception Backtrace:
0   CoreFoundation                 0x3724188f __exceptionPreprocess + 163
1   libobjc.A.dylib                0x34f46259 objc_exception_throw + 33
2   CoreFoundation                 0x37244a9b -[NSObject doesNotRecognizeSelector:] + 175
3   CoreFoundation                 0x37243915 ___forwarding___ + 301
4   CoreFoundation                 0x3719e650 _CF_forwarding_prep_0 + 48
5   CoreData                       0x36a78f4d -[NSFetchedResultsController(PrivateMethods) _managedObjectContextDidChange:] + 2401
6   Foundation                     0x37aa64ff __57-[NSNotificationCenter addObserver:selector:name:object:]_block_invoke_0 + 19
7   CoreFoundation                 0x3720d547 ___CFXNotificationPost_block_invoke_0 + 71
8   CoreFoundation                 0x37199097 _CFXNotificationPost + 1407
9   Foundation                     0x37a1a3eb -[NSNotificationCenter postNotificationName:object:userInfo:] + 67
10  CoreData                       0x36a00839 -[NSManagedObjectContext(_NSInternalNotificationHandling) _postObjectsDidChangeNotificationWithUserInfo:] + 77
11  CoreData                       0x36a0031d -[NSManagedObjectContext(_NSInternalChangeProcessing) _createAndPostChangeNotification:withDeletions:withUpdates:withRefreshes:] + 305
12  CoreData                       0x36a09d01 -[NSManagedObjectContext(_NSInternalChangeProcessing) _processRecentChanges:] + 1245
13  CoreData                       0x369fd145 -[NSManagedObjectContext save:] + 201
14  PalFinds                       0x000a57cb -[DBController saveContext] (DBController.m:75)
15  PalFinds                       0x000a8dff -[DBController createActivityWithDictionaries:] (DBController.m:852)
16  PalFinds                       0x00086649 -[PFMe finishRequest:andRestConnection:] (PFMe.m:1986)
17  PalFinds                       0x0002e17d -[RestConnection connectionDidFinishLoading:] (RestConnection.m:326)
18  Foundation                     0x37addc29 __65-[NSURLConnectionInternal _withConnectionAndDelegate:onlyActive:]_block_invoke_0 + 17
19  Foundation                     0x37a356d9 -[NSURLConnectionInternalConnection invokeForDelegate:] + 29
20  Foundation                     0x37a356a3 -[NSURLConnectionInternal _withConnectionAndDelegate:onlyActive:] + 199
21  Foundation                     0x37a355c5 -[NSURLConnectionInternal _withActiveConnectionAndDelegate:] + 61
22  CFNetwork                      0x36ed97f5 URLConnectionClient::_clientDidFinishLoading(URLConnectionClient::ClientConnectionEventQueue*) + 193
23  CFNetwork                      0x36ece4a5 URLConnectionClient::ClientConnectionEventQueue::processAllEventsAndConsumePayload(XConnectionEventInfo<XClientEvent, XClientEventParams>*, long) + 425
24  CFNetwork                      0x36ece599 URLConnectionClient::ClientConnectionEventQueue::processAllEventsAndConsumePayload(XConnectionEventInfo<XClientEvent, XClientEventParams>*, long) + 669
25  CFNetwork                      0x36ece599 URLConnectionClient::ClientConnectionEventQueue::processAllEventsAndConsumePayload(XConnectionEventInfo<XClientEvent, XClientEventParams>*, long) + 669
26  CFNetwork                      0x36ece1a3 URLConnectionClient::processEvents() + 107
27  CFNetwork                      0x36ece0d9 MultiplexerSource::perform() + 157
28  CoreFoundation                 0x37215ad3 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 15
29  CoreFoundation                 0x3721529f __CFRunLoopDoSources0 + 215
30  CoreFoundation                 0x37214045 __CFRunLoopRun + 653
31  CoreFoundation                 0x371974a5 CFRunLoopRunSpecific + 301
32  CoreFoundation                 0x3719736d CFRunLoopRunInMode + 105
33  GraphicsServices               0x33956439 GSEventRunModal + 137
34  UIKit                          0x30f43cd5 UIApplicationMain + 1081
35  PalFinds                       0x000038bf main (main.mm:14)
36  PalFinds                       0x00003878 start + 40
4

2 回答 2

0

我知道这可能看起来很牵强但是我有一个非常相似的问题并且我已经实现了所有这些方法然后我意识到我已经为 fetchedREsultsController 注释掉了我的版本......一旦我把它放回没有更多的 sigbart 并且像魅力。

我要说的是,有时错误并不总是显而易见的。

我们需要查看更多代码才能弄清楚。谢谢。

于 2012-09-19T13:00:46.137 回答
0

看起来它正在尝试回调委托,而委托没有实现它应该实现的方法。

我在想controller:didChangeObject:atIndexPath:forChangeType:newIndexPath:要么controllerDidChangeContent:

你在你的 中实现了这些方法NSFetchedResultsControllerDelegate吗?

于 2012-09-19T12:03:27.417 回答