Обновленный ответ
Я обновляю этот ответ, чтобы отразить реальность происходящего.
Как Патрикн заявил в своем первоначальном вопросе, он разрабатывает приложение на основе документов с Core Data. В конце концов он обнаружил, что документ возвращает YES для autoSavesInPlace. Оказывается, это поведение по умолчанию, которое, как представляется, имеет нежелательный эффект с NSManagedObjectContext.
По Apple :
В Mac OS X v10.7 и новее пользователям не нужно сохранять документы
явно или беспокоиться о потере несохраненных изменений. Вместо этого
Система автоматически записывает данные документа на диск по мере необходимости. Ваш
Подкласс NSDocument включается в это поведение, переопределяя
Метод класса autosavesInPlace для возврата YES. Идеальная база для
без сохранения документов это: данные документа, которые пользователи видят в
Окно приложения всегда идентично документу на диске.
Звучит замечательно, но они также говорят:
Прежде чем включить автосохранение, рассмотрите возможность сохранения вашего
приложение. Если ваше приложение сохраняется быстро, то для этого нет особых причин
не включить его. Но если ваше приложение сохраняется медленно,
Автосохранение может вызвать периодическую блокировку вашего пользовательского интерфейса, в то время как
экономия происходит.
Короче говоря, если вы разрабатываете приложение на основе документов для Lion и видите сомнительную производительность, вам следует подумать, стоит ли возвращать YES для autosavesInPlace
.
Оригинальный ответ
Если вы действительно хотите исправить, то вам нужно выяснить, что вызывает операция сохранения. Это не то, что обычно происходит, поэтому я бы очень внимательно просмотрел ваш код и установил точки останова при каждом вызове для сохранения.
Запустите приложение, и вы сможете узнать, где оно происходит.
Нет причины, по которой он будет вызываться случайным образом, но если после этого вы обнаружите, что это все еще так, то я бы отправил отчет об ошибке.