Я разрабатываю многопоточное приложение ASP.NET 3.5, во время работы с каким-то файлом получаю следующее исключение:
Процесс не может получить доступ к файлу, так как он используется другим процессом
Я ищу способ точно узнать, какой процесс блокирует этот файл, чтобы я мог остановить его доступ к файлу. ИЛИ, если это сложно, мне нужен способ заблокировать файл моим потоком, чтобы другие потоки/процессы не могли получить к нему доступ. Спасибо.
Ответ 1 · RB.
Чтобы фактически заблокировать доступ к ресурсу (второй вариант, который вы предлагаете), вы можете использовать Mutex (взаимное исключение).
Я ничего этого не делал в .NET, но, похоже, есть хорошие статьи об этом.
Ответ 2 · рейтинг 1 · RB.
Process Explorer позволит вам сделать это. Просто нажмите "Найти" -> "Найти дескриптор или DLL", затем введите имя вашего файла.
Затем он покажет вам каждый процесс с дескриптором этого файла.