Сбои CoreData при сохранении контекста основного объекта - PullRequest
0 голосов
/ 05 февраля 2019

Когда я перемещаю свое приложение в фоновый режим, кажется, что CoreData вылетает, как только я сохраняю mainObjectContext.В консоли я вижу следующую ошибку:

CoreData: error: SQLCore dispatchRequest: exception handling request: <NSSQLSaveChangesRequestContext: 0x6000064c7ac0> , -[_SwiftValue encodeWithCoder:]: unrecognized selector sent to instance 0x60000319de00 with userInfo of (null)

Метод сохранения контекста основного объекта реализован так:

func save() {
    if mainManagedObjectContext.hasChanges {
        mainManagedObjectContext.performAndWait {
            do {
                try mainManagedObjectContext.save()
            } catch {
                NotificationCenter.default.post(name: .ManagedObjectContextSaveError, object: nil)
            }
        }
        NotificationCenter.default.post(name: .MainManagedObjectContextSaved, object: nil)
    }
}

Этот метод вызывается из AppDelegate.applicationWillResignActive(_:) IЯ не уверен, почему здесь вызывается encodeWithCoder и почему он зависает.

На самом деле, я даже не уверен, как дальше его устранять.

...