Скажем, у вас был внешний процесс, записывающий файлы в какой-то каталог, и у вас был отдельный процесс, периодически пытающийся прочитать файлы из этого каталога. Проблема, которую следует избегать, - это прочитать файл, который в настоящий момент находится в процессе написания другого процесса, поэтому он будет неполным. В настоящее время процесс, который читает, использует проверку таймера минимального количества файлов, поэтому он игнорирует все файлы, если их последняя измененная дата не превышает XX секунд.
Мне интересно, есть ли более чистый способ решить эту проблему. Если тип файла неизвестен (может быть несколько разных форматов), существует ли какой-то надежный способ проверить заголовок файла для количества байтов, которые должны быть в файле, а также количества байтов, находящихся в данный момент в файле, чтобы подтвердить их соответствие?
Спасибо за любые мысли или идеи!