Macos NSUserDefaults是否安全地处理自动终止?

Macos NSUserDefaults是否安全地处理自动终止?,macos,nsuserdefaults,Macos,Nsuserdefaults,苹果的文件说 NSUserDefaults临时禁用突然终止,以防止在设置默认值和将包含该默认值的首选项文件写入磁盘之间终止进程 对于自动终止,它也会这样做吗?或者当我怀疑可能发生自动终止时(例如,当应用程序被隐藏时),我必须手动进行同步吗?它不需要专门针对自动终止执行任何操作。原因是自动终止的行为与⌘Q(即,如果未启用突然终止,则调用-[NSApp terminate://code>),并且NSUserDefaults已处理⌘很好 (需要注册,从34:00左右开始)有更多信息。如果这是真的,那很

苹果的文件说

NSUserDefaults临时禁用突然终止,以防止在设置默认值和将包含该默认值的首选项文件写入磁盘之间终止进程


对于自动终止,它也会这样做吗?或者当我怀疑可能发生自动终止时(例如,当应用程序被隐藏时),我必须手动进行同步吗?

它不需要专门针对自动终止执行任何操作。原因是自动终止的行为与⌘Q(即,如果未启用突然终止,则调用
-[NSApp terminate://code>),并且
NSUserDefaults
已处理⌘很好


(需要注册,从34:00左右开始)有更多信息。

如果这是真的,那很好,但我在文档中找不到任何验证-相反,我发现,例如,非常可怕的“系统可以随时终止自动终止应用程序的底层进程”。叹气。。。我想我需要去归档一个雷达来修复文件。WWDC题为“恢复和自动终止”的讲座提供了更好的信息。您也可以自己使用调试器进行验证。在-[NSApplication terminate:]上设置一个断点,关闭所有窗口,切换到别处,并产生内存压力。(我怀疑写这段文档的人都有点过分热情,并且对突然终止和自动终止之间的区别感到困惑)编辑得到了赞赏,并改进了答案,但我还没来得及批准,评论员就把它否决了。再来一次?@Catfish\u-Man我把乔的编辑重新写进了你的答案。谢谢。可惜乔没有因此得到赞扬,但至少现在它还在那里:)@Catfish_-Man没关系;我对他的问题投了赞成票;不管怎么说,还有更多的机会!