2015-06-12 2 views
0

Просьба пояснить Разницу между нижеуказанными методами.В чем разница между методами действия MagicalRecord в iOS

- (void)save: 
- (void)saveOnlySelfAndWait;  
- (void)saveToPersistentStoreAndWait; 

Примечание: Некоторые один отправил ответ на этот вопрос, но я не удовлетворен этим ответом, так может кто-нибудь пожалуйста, поделитесь правильной и простой ответ.

+0

В отличие от форумов, мы не используем «Спасибо» или «Любая помощь оценена» или подписи на [so]. См. «[Должны ли« Привет »,« спасибо », теги и приветствия удалены из сообщений?] (Http://meta.stackexchange.com/questions/2950/should-hi-thanks-taglines-and-salutations-be «Спасибо заранее», а не «Спасибо в продвинутый». –

+0

@JohnSaunders Спасибо за предложение, это мне поможет. –

+0

@JohnSaunders, если вы знаете разницу в магической записи между вышеуказанным методом, пожалуйста, очистите –

ответ

0

Подумав и поиска много я получил ответ ...

Я признаю, что эти методы не очень хорошо документированы. Тем не менее, они хорошо согласуются с моделью вложенных контекстных данных.

С MagicalRecord не используйте save: на NSManagedObjectContext. В MagicalRecord есть все эти дополнительные обработчики ошибок, протоколирование и обработчики завершения. Вы хотите использовать их.

Вы, кажется, знаете, куда должны идти данные (от одного контекста до корня). Это зависит от вашей иерархии относительно метода сохранения, который вам нужно использовать. Если вы только на один уровень глубины (то есть в дочернем контексте defaultContext), то saveOnlySelfAndWait сохранит до defaultContext. В противном случае saveToPersistentStoreAndWait будет проходить по иерархии для вас, вплоть до хранилища данных.

Методы andWait блокируют вызовы. Вызов с завершением обработчика нет. Они довольно прямолинейны в использовании.

+2

Другими словами: MR_saveOnlySelfAndWait будет ** сохранять ** синхронно NSManagedObject в ** пространстве объектов **, MR_saveToPersistentStoreAndWait будет ** упорствовать ** синхронно с объектами в вашем ** хранилище данных **. _Moreover MR_save: метод устарел и будет удален в следующей версии._ –

+0

@CanATAC Спасибо за ответ. Хороший ответ –

+1

Хотел бы я получить какой-то момент;) Ничего, рад помочь! –

Смежные вопросы