objective-c – CFPreferences创建多个文件

前端之家收集整理的这篇文章主要介绍了objective-c – CFPreferences创建多个文件前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我只有一个小问题:

为什么CFPreferences-API会在我的UserPrefs-Directory中创建多个文件?所有文件都有我的Bundle-Identifier作为名称,所有文件(除了原文之外)都添加了这样的后缀:

> com.myComp.myApp.plist< - (只应创建此plist文件)
> com.myComp.myApp.plist.0qzcicc
> com.myComp.myApp.plist.8dhjfht

解决方法

这看起来非常像原子写作的副作用.

原子写入意味着,无论何时从NSData(或其他)对象写入文件,都首先使用同一目录中的临时文件名创建该文件.然后将所有数据写入该文件(通常不是原子的操作).关闭文件后,它将重命名为原始文件名.重命名是一个原子步骤,可确保可能查看该文件的任何其他进程看到完整的旧文件或完整的新文件.进程无法只看到文件的一半.

有趣的命名文件看起来像是这个过程中的工件.也许你的应用程序在原子写入中间崩溃了?

原文链接:/cocoa/568439.html

猜你在找的cocoa相关文章