gpt4 book ai didi

objective-c - 分别在用户进程和 kauth 系统中获取错误的文件创建日期和 vnode 创建日期

转载 作者:搜寻专家 更新时间:2023-10-30 20:28:13 26 4
gpt4 key购买 nike

我正在使用 kauth 系统来监控文件特定的更改。在我的 KAUTH_FILEOP_SCOPE 监听器中,当我收到任何通知时,我将其发送(排队)到用户进程。在用户进程中,当我尝试使用

访问文件创建日期时
[[NSFileManager defaultManager] attributesOfItemAtPath:path error:&error];

时间是 1904 年 1 月 1 日。

我尝试在 KAUTH_FILEOP_CLOSE 情况下将 vnode 创建时间传递给用户进程这也是 1904 年 1 月 1 日。

[NSDate dateWithTimeIntervalSince1970:-2082844800];

如果我在用户进程中引入 sleep 假设 2 到 3 秒。我得到正确的创建日期。

为什么系统会这样?天气我做错了什么?

我已经搜索并做了很多研发来寻找解决方案但没有成功。什么是解决方案,因为我不想在我的程序中休眠?

最佳答案

您可能会发现 kauth 事件在文件修复之前触发。不能改用 kevents 或类似的通知机制吗?我怀疑它会在稍后阶段触发。

关于objective-c - 分别在用户进程和 kauth 系统中获取错误的文件创建日期和 vnode 创建日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23630705/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com