В Windows и подобных программах я использовал трюк, чтобы узнать, какой файл используется в данный момент (специально написано).
Я использую, чтобы открыть файл для записи, и если он потерпел неудачу, скорее всего, другой процесс занят доступом к нему.
К сожалению, этот трюк (использование C OPEN с эксклюзивной блокировкой для записи) не работает на моем Mac. Пока мой curl в терминале все еще пишет, моя проверка -fileBusy () не проходит.
вызов fcnt для fd с F_GETLK также не обнаруживает блокировку.
Есть ли у меня шанс обнаружить, что файл используется другим процессом?
Ps> прослушивание fsevents невозможно, поскольку мое приложение запускается после того, как другое приложение / процесс создано.