NSUserDefaults多久会同步一次?

duc*_*i9y 5 nsuserdefaults ios

该文档NSUserDefaults说明该synchronise方法是定期调用的,但没有提及频率.10分钟的谷歌搜索没有透露任何信息.

这个synchronise方法的频率是多少?

小智 8

这是一个未公开的实现细节(可能它甚至不是一个恒定的时间间隔).但是,您可以通过执行一个方法调整- [NSUserDefaults synchronize]并更改其实现来自己找到它,以便它在NSLog()每次同步时调用.

  • 自动同步不会通过与手动同步相同的代码路径(具体来说,它是在NSUserDefaults使用的CFP参考中实现的).在10.7和iOS上,它在变化后大约是15秒的间隔,尽管它不是恒定的.10.8+由于同步性能提高而缩短. (3认同)