создать temporaryContext вроде этого:Как отменить изменения во временном контексте?
let temporaryContext = NSManagedObjectContext(concurrencyType: .PrivateQueueConcurrencyType)
temporaryContext.parentContext = Utility.managedObjectContext()
temporaryContext.performBlockAndWait({
// .. here I have done some changes on temporaryContext
let success = temporaryContext.save(nil)
//GUI get updated, GUI use MAIN context
})
Я хочу откатить изменения, так что я делаю это:
temporaryContext.performBlockAndWait({
temporaryContext.rollback()
let success = temporaryContext.save(nil)
//GUI not get restored to the default variable
})
Но это не имеет никакого эффекта, родительский контекст не будет откат, то почему?
Я не уверен, что вы подразумеваете под словом "state stick в измененное состояние". Вы вносили какие-либо изменения между первым вызовом 'timeContext.save (nil)' и 'temporContext.rollback()'? Если да, сохраняются ли эти изменения в управляемых объектах после вызова 'rollback'? –
Я не делал никаких изменений, что я имею в виду, что родительский контекст не будет откатываться назад –