NSUserDefaults是执着吗?如果我们关闭申请,它仍然存在。所以这是IO。
这是否意味着我们每次都
– setObject:forKey:
我们做IO?
每次我们执行时,iPhone都会读取和写入磁盘
[[NSUserDefaults standardUserDefaults] setObject:trimmedSearchLocation forKey:SEARCHNEAR];
或那种事
答案 0 :(得分:3)
来自docs:
在运行时,您使用NSUserDefaults对象从用户的默认数据库中读取应用程序使用的默认值。 NSUserDefaults缓存信息以避免每次需要默认值时都必须打开用户的默认数据库。 synchronize方法会定期自动调用,使内存缓存与用户的默认数据库保持同步。
所以只有synchronize
调用你的磁盘上才有IO!
答案 1 :(得分:1)
系统会定期同步设置。您很少需要明确地同步它们。