我有一个应用程序,它经常调用变量。这些变量存储在 NSUserDefaults
中。
我想知道 NSUserDefaults
存储在哪里?
如果我直接调用 NSUserDefaults
而不是使用变量。
哪个更快?变量或 NSUserDefaults
。因为使用变量来存储NSUserDefaults
会是占用更多内存的原因。
最佳答案
NSUserDefaults
将其数据保存在磁盘上,因此在某些时候它必须从磁盘加载该数据以便将其存储在内存中。当您告诉它同步
时,它需要将它写回磁盘。
一旦进入内存,它会将其存储在类似字典的容器中(可能是 NSMutableDictionary
)。
与直接读取变量相比,从两个磁盘读取非常昂贵,而与读取变量相比,从字典读取适度昂贵。
读取/写入变量的速度大大加快。
关于ios - 读取 NSUserDefaults 与变量的速度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37410584/