Я заметил, что получаю несколько ошибок в случайных точках в своем приложении. У меня было 2 ошибки: «double free» и «неправильная контрольная сумма для освобожденного объекта». Heres трассировка стека «двойной свободной» ошибки. Может ли кто-нибудь дать представление? Это происходит при вызове в моем коде, который просто устанавливает атрибут NSNumber
, поэтому я не могу понять, почему он это делает!Core Data Malloc Ошибки
myObject.numberAttr = [NSNumber numberWithInt:[dateComponents day]];
Случайным Срабатывает (Не всегда бывает):
#0 0x9585b072 in malloc_error_break
#1 0x9585c218 in szone_error
#2 0x9585c34d in free_tiny_botch
#3 0x01c5e064 in _PFDeallocateObject
#4 0x01c97e2b in -[NSManagedObject(_NSInternalMethods) _setLastSnapshot__:]
#5 0x01c97a0d in -[NSManagedObjectContext(_NSInternalChangeProcessing) _establishEventSnapshotsForObject:]
#6 0x01c97866 in _PFFastMOCObjectWillChange
#7 0x01c976c5 in _PF_ManagedObject_WillChangeValueForKeyIndex
#8 0x01c97525 in _sharedIMPL_setvfk_core
#9 0x01c9b827 in _svfk_5
Большое спасибо,
Майкл
+1 для ответа, так как это помогло мне решить мою проблему. В моем случае NSManagedObject, созданный главным контекстом, использовался в фоновом контексте, который явно ошибочен. – nagan