Как определить, завершена ли копия файла с использованием какао - PullRequest
2 голосов
/ 04 февраля 2012

Я разрабатываю приложение для отслеживания папок для MAC в XCode, используя платформу Foundation и FSEvents APIМне нужно знать, был ли файл полностью скопирован в место назначения, прежде чем я открою файл для другой операции.Есть ли способ узнать это?пожалуйста, совет

Ответы [ 3 ]

1 голос
/ 04 декабря 2016

Я заметил, что FSEvents API отправляет событие «create» в начале и «create-and-modify» в конце.В моем проекте я использовал FSEventsStream с нулевой задержкой и флагом «NoDefer» при создании.Наблюдение только за событиями «Изменить» может дать вам информацию о том, что копирование файла завершено.

0 голосов
/ 04 февраля 2012

Из простого изучения FSEvents API Я бы сказал, что то, что вы хотите, невозможно. Я могу ошибаться, хотя сам никогда не использовал FSEvents. Задавший вопрос этот вопрос решил проблему, отдельно отслеживая новый файл с lsof.

0 голосов
/ 04 февраля 2012

Вы можете проверить, существует ли файл, который вы хотите открыть, или нет? и действовать соответственно.

...