4

可能重复:
NSUserDefaults 同步的最佳实践

我调用-[NSUserDefault setIntegerValue:1 forKey:differentKeys]; 了大约 50 次,每次使用不同的键,然后调用-[NSUserDefault synchronize];

这会对性能产生影响吗?多少次会对性能产生影响?

4

2 回答 2

4

synchronize其视为提交更改命令,因此如果您不需要每次将值设置为默认值时都调用它。如果您NSUserDefaults同时进行大量更改,那么您可能只需要synchronize在最后调用一次。这完全取决于您的具体需求。

此外,这方面的性能差异也会因存储的数据量、频率和设备的功能而异。总的来说,我建议synchronize尽可能少打电话。

于 2012-08-28T13:00:12.127 回答
3

它会对性能产生很小的影响。也许不是你注意到的东西。但是,最好只调用-[NSUserDefaults synchronize];一次,在所有 set 方法调用结束时调用,因为它会将所有更改保存到文件中,而不是在每次更改之后。

于 2012-08-28T12:59:23.777 回答