У меня есть длительная задача, которая выполняет серию файловых операций на подключенных USB-накопителях, и я хочу, чтобы пользователи не извлекали накопитель из Finder (или где-либо еще), пока это происходит. Есть кнопка «Отмена», которая позволяет завершить задачу в любой момент.
Я предполагал, что сохранение дескриптора файла на смонтированном томе на время выполнения задачи поможет, но это не сработало.
Это то, что я пробовал (обработка ошибок удалена):
NSString *tempFilePath = @"/Volumes/myVolume/.myTempFile";
if ([[NSFileManager defaultManager] fileExistsAtPath:tempFilePath] == NO) {
[[NSFileManager defaultManager] createFileAtPath:tempFilePath contents:nil attributes:nil]
}
_tempFile = [NSFileHandle fileHandleForWritingAtPath:tempFilePath];
Есть идеи о том, что я могу сделать, чтобы предотвратить извлечение тома?