[Использование C# и Windows, в качестве платформы]Получение уведомления, когда блокировка файла выпущен
У меня есть камера, которая записывает JPG файлы в локальную папку на моем компьютере. Я хочу загрузить каждый файл, который падает на камеру, поэтому у меня есть FileSystemWatcher, который уведомляет меня всякий раз, когда создается новое изображение, , но камера блокирует файл, когда он записывается, поэтому, если я попытаюсь загрузить его сразу после уведомления его создание, я получаю исключение, говоря, что файл заблокирован.
В настоящее время у меня есть цикл while (с Thread.Sleep), который повторяет загрузку изображения каждые 0,2 секунды, но он чувствует себя немного грязным.
Есть ли более элегантный способ подождать, пока блокировка будет выпущена, поэтому я могу загрузить файл, будучи уверенным, что он больше не используется ??
Возможный дубликат [Как проверить блокировку файлов?] (Http://stackoverflow.com/questions/1304/how-to-check-for-file-lock) – Plutonix
Я не хочу знать, заперта. Я хочу получать уведомления, когда он НЕ заблокирован. – SuperJMN
[https://social.msdn.microsoft.com/Forums/vstudio/en-US/dd1d86a8-b803-4425-bf84-db9a4b7c1d52/filesystemwatcher-for-locks-readwrite-lock-on-files?forum = csharpgeneral] (https://social.msdn.microsoft.com/Forums/vstudio/en-US/dd1d86a8-b803-4425-bf84-db9a4b7c1d52/filesystemwatcher-for-locks-readwrite-lock-on-files?forum= csharpgeneral) – esiprogrammer