2012-04-19 1 views
1

NSUserDefaults является постоянным правильным? Если мы закрываем приложение, оно все еще там. Так что это IO.Поддерживает ли NSUserDefaults IO при выполнении?

Означает ли это, что каждый раз мы делаем

– setObject:forKey: мы делаем IO?

ли iPhone будет читать и писать на диск каждый раз мы делаем

[[NSUserDefaults standardUserDefaults] setObject:trimmedSearchLocation forKey:SEARCHNEAR]; 

или тому подобное

ответ

3

Из docs:

Во время выполнения используется объект NSUserDefaults для прочитайте значения по умолчанию, которые ваше приложение использует из базы данных по умолчанию пользователя. NSUserDefaults кэширует информацию, чтобы избежать необходимости открывать базу данных по умолчанию пользователя каждый раз, когда вам нужно значение по умолчанию. Метод синхронизации, который автоматически вызывается с периодическими интервалами, синхронизирует кеш-память в памяти с базой данных по умолчанию пользователя.

так, только если synchronize вызывает у вас IO на вашем диске!

+1

+1 Удивительно то же самое с другим ответом –

1

Система периодически синхронизирует настройки. Вам редко приходится синхронизировать их явно.

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

  • Нет связанных вопросов^_^