NSUserDefaults同步的最佳实践

每当我向plist写入任何东西时,我都使用[[NSUserDefaults standardUserDefaults] synchronize] 。 这是过度杀伤力? 或者是否有这样做的不利影响?

是的,这可能是矫枉过正,但在一个简单的应用程序,你会注意到性能受到影响? 如果您只是在基本的用户交互(如用户select其设置)之后保存,则可能不会。 调用更频繁同步的好处是,如果您的应用程序可能会崩溃并且您保存的信息非常重要,否则iOS会定期为您保存。

同步方法会按周期自动调用,使内存中的caching与用户的默认数据库保持同步。

经常调用它可能会导致性能问题,但是如果它是一个小应用程序(就像前面提到的那样),或者如果您真的需要plist来更新当前线程所做的更改或其他线程所做的更改在应用程序中。

因为此方法是定期自动调用的,所以只有当您不能等待自动同步(例如,如果您的应用程序即将退出),或者如果要将用户默认值更新为磁盘上的内容你没有做任何改变

你可能会注意到的唯一的不利影响可能是性能下降可以忽略不计。