Новые функции и возможности в Базовых Данных в OS X v10.9
Этот документ описывает основные новые области функциональности в Базовых Данных в OS X v10.9.
Содержание:
Базовые Данные и iCloud
Мы добавили существенные улучшения к поддержке iCloud Базовых Данных, особенно в запуске приложения и областях ведения счетов. Базовые Данные теперь выполняют свою установку iCloud асинхронно и сразу возвращаются из добавления персистентного хранилища персистентному координатору хранилища. Мы также обрабатываем проблемы доступности iCloud более непосредственно. Когда iCloud недоступен или не полностью инициализированный, базовые Данные прозрачно поддерживают локальное хранилище нейтрализации. Поддерживающее iCloud хранилище также связывается к учетной записи iCloud, и Базовые Данные поддерживают эту ассоциацию, поскольку пользователь изменяет учетные записи. Мы также обеспечиваем новый APIs для наблюдения изменений учетной записи, разделения поддержки iCloud со стороны хранилища, наличие многократных контейнеров и удаление содержания iCloud.
Кроме того:
Существуют многочисленные повышения производительности в определенном значительно улучшенном начальном поведении загрузки хранилища.
iCloud, импортирующий больше, не блокирует персистентного координатора хранилища приложения.
Существует надежность, фиксирует и улучшенная обработка ошибок загрузки.
В то время как оффлайн или выписался, теперь возможно создать новый iCloud персистентные хранилища.
Логика импорта базовых Данных больше не вызывает пользовательский
awakeFromInsertили методы доступа.Проблемы с наследованием объекта были устранены.
NSManagedObjectContextmergeChangesFromContextDidSaveNotification:обработка методаNSPersistentStoreDidImportUbiquitousContentChangesNotificationуведомления были улучшены.NSPersistentStoreCoordinator теперь отправляет a
NSPersistentStoreCoordinatorStoresWillChangeNotificationуведомление при обработке переходов имело отношение к хранилищам iCloud.userInfo словарь в
NSPersistentStoreCoordinatorStoresWillChangeNotificationиNSPersistentStoreCoordinatorStoresDidChangeNotificationуведомления теперь содержат aNSPersistentStoreUbiquitousTransitionTypeKeyключ для идентификации типа события, инициировавшего переход. Соответствующее значение быть одним изNSPersistentStoreUbiquitousTransitionTypeперечисление оценивает какNSNumberобъект.
Общие базовые улучшения данных
Базовые Данные SQLite персистентное хранилище примут значение по умолчанию к использованию WAL journal_mode на всех приложениях, соединенных на или после 10.9. Этот режим предлагает лучшую надежность и производительность, чем классический откат SQLite (удаляет) журналирование. WAL journal_mode однако, не рекомендуется для файлов базы данных только для чтения, или для файлов, которые должны взаимодействовать с OS X v10.6 или ранее. Для получения предыдущего поведения добавьте следующий словарь к словарю опций хранилища, которому Вы передаете к NSPersistentStoreCoordinator addPersistentStoreWithType:configuration:URL:options:error: метод:
@{ NSSQLitePragmaOptions : @{ @"journal_mode" : @"DELETE" } } |
Дополнительно:
Если все существующие строки будут иметь ненулевые значения, миграция легкого веса теперь разрешит переключать свойство от дополнительного до обязательного.
Автоматическая миграция теперь обрабатывает проблемы игры в песочнице.
NSPredicateиNSSortDescriptorAPIs публично объявляет работу поддержки сNSOrderedSet. (Они всегда выполняли работу сNSOrderedSet.)NSPredicateиNSSortDescriptorпримитеNSSecureCodingпротокол. Однако оценивая экземпляры этих классов в памяти после того, как десериализация отключена по умолчанию для безопасности. У них есть новый API для того, чтобы явно повторно разрешить оценку.
Copyright © 2015 Apple Inc Все права защищены. Условия использования | Политика конфиденциальности | обновленный: 22.10.2013