HTML5   发布时间:2022-04-27  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了iOS – setObject与Synchronize大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
新手问题.如果我将对象设置为NSUserDefault,我还需要同步以确保对象永久返回NSUserDefault数据库吗?我想我要问的是,“setobject”是将对象永久地放回数据库中还是放入需要同步的一些临时存储中以确保永久存储?

例如:
//在下面我在添加一行数据后在NSUserDefaults中放置一个列表的新副本

userDefaults.setObject(newMutableList,forKey: "itemList")

//我还需要立即同步以确保永久保存数据库更新吗?

userDefaults.synchronize()

我的代码在没有同步的情况下工作,这意味着我不需要它.但我想确保跳过同步的使用不会在将来导致另一种情况出现问题.

提前致谢.

解决方法

在iOS 7及更早版本中:

当您调用-setObject:forKey:时,NSUserDefaults将来会调度同步操作大约10秒钟.发生这种情况时,到目前为止的所有内容都会保存到持久存储中.这里的想法是你可以自由地使用set和get方法,而无需每次都花费大量的性能成本.

在iOS 8上,NSUserDefaults的工作方式不同,延迟是几毫秒,而不是10秒,所以-synchronize几乎从来没用过.

在iOS 12上,不需要使用-synchronize的所有剩余使用.请注意,应用程序可能仍然需要调用它,因为它们支持iOS 11及更早版本.

大佬总结

以上是大佬教程为你收集整理的iOS – setObject与Synchronize全部内容,希望文章能够帮你解决iOS – setObject与Synchronize所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。