Что -setPropagatesDeletesAtEndOfEvent: на самом деле делает?

Порядок оценки неуточнен, см. http://en.wikipedia.org/wiki/Sequence_point

Это та же ситуация, что и пример с примером оператора + :

Рассмотрим две функции f() и g(). В C и C ++ оператор + не связан с точкой последовательности, и поэтому в выражении f()+g() возможно, что либо f(), либо g() будут выполнены в первую очередь.

blockquote >

1
задан dontWatchMyProfile 11 June 2010 в 11:07
поделиться

1 ответ

Это контролирует, распространяются ли удаления во время события изменения, т.е. после didChange... вызова метода (явного или синтезированного.)

Насколько мне известно, это влияет только на флаги на объектах в памяти, помечая их как подлежащие или не подлежащие удалению. Это влияет только на то, как контекст управляет объектами в памяти, но не на то, как контекст управляет удалением на диске. Если установлено значение YES, то контекст пометит объект как удаляемый и будет считать его удаленным из графа объектов. Однако при отмене флаг будет отменен, как если бы вы удалили объект напрямую.

Этот флаг доступен, потому что могут возникнуть ситуации, когда необходимо, чтобы объекты оставались на месте некоторое время даже после завершения удаления или каскадного отношения. Когда НЕТ, контекст вернет "удаленный" объект до момента следующего сохранения.

Это продвинутая функция, и она редко используется.

2
ответ дан 2 September 2019 в 23:49
поделиться
Другие вопросы по тегам:

Похожие вопросы: