Дополнительные процессные блокировки файлов - PullRequest
1 голос
/ 30 апреля 2009

У меня есть система .NET, в которой мне нужно разрешить блокировку и разблокировку файлов через границы процесса. Модель, которую я планирую использовать, такова:

  1. Пользователь создает токен блокировки
  2. Использование Блокирует файл с токеном и обновляет токен
  3. повторить на # 2 при необходимости
  4. Использование разблокирует все файлы, выпустив токен
  5. Если используется не удается обновить токен в какой-то период времени, # 4 происходит автоматически

Каждый шаг может быть выполнен из другого процесса.

Вопрос в два раза: это разумная модель и есть ли какие-либо легкодоступные инструменты для ее реализации? Если это не может быть сделано напрямую в ОС, я думаю о какой-то консультативной блокировки с .file с или тому подобным.

Редактировать: этот режим получает неисключительные блокировки чтения, но другие режимы могут получать эксклюзивные блокировки записи, но они всегда будут освобождаться тем же процессом, который их получил.

...