macos - 如何判断文件或文件夹是否繁忙,例如Finder 正忙着复制到它吗?

标签 macos

我试过了:

  • 检查 FSCatalogInfo nodeFlags看看 kFSNodeForkOpenBit已设置(使用 kFSNodeForkOpenMask )。
  • 检查创建者代码是否在kFirstMagicBusyFiletype之间和 kLastMagicBusyFiletype .
  • 检查 ExtendedFileInfo extendedFinderFlags看看 kExtendedFlagObjectIsBusy已设置。
  • 运行GetFileInfo -ab从壳。

  • 所有这些都报告 Finder 正在复制到的文件未打开。

    使用 lsof确实检测到文件已打开,但是 (a) 我不想调用 lsof来自我的应用程序,并且(b)我的理解是它依赖于私有(private) API,因此查看其源代码无济于事。

    最佳答案

    现在对你来说已经晚了大约 2 年,但我想为了以后有人发现这个,我会注意到你可以检查文件的创建日期。 Finder 在复制时将其设置为 kMagicBusyCreationDate (1946-02-14 08:34:56 +0000)。

    关于macos - 如何判断文件或文件夹是否繁忙,例如Finder 正忙着复制到它吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/444561/

    相关文章:

    macos - 带背景和wantsLayer的IKImageBrowserView

    macos - NSTableView 单元格的自定义选定图标

    xcode - dyld:库未加载:/usr/local/lib/libmpfr.4.dylib

    javascript - 警告 : Task "karma" not found. 使用 --force 继续

    svn - 使用有效的 python 绑定(bind)在 Mac 上将 SVN 转换为 Mercurial 不起作用

    css - 位置固定时 macgap 滚动问题

    bash - 从同一脚本杀死其他 bash 守护进程

    c++ - 带有您自己的类的 vector C++

    xcode - 替换 :make command with a custom script in vim

    mysql - 如何在我的 mac 上启动后自动启动 zend 服务器