Я использую ArcObjects и использовал метод try / catch, который вы упомянули.
В моем случае более одного пользователя должны читать и записывать данные в одном классе пространственных объектов в базе геоданных. У меня появляется «экран загрузки», который позволяет пользователю узнать, что данные используются, а затем цикл повторяется каждые несколько секунд в фоновом режиме, пока для них не будет создана блокировка.
Другой способ использования замков описан ниже. Я знаю, что мое использование этого метода просмотра файлов блокировки отличается от того, что вы хотите сделать, но концепция та же самая, и вы можете использовать нечто подобное, если вам нужно определить тип блокировки или кому принадлежит блокировка. , Вот информация, если вы заинтересованы.
Поскольку вы можете видеть конкретные файлы блокировок, кому они принадлежат, к какому типу блокировок они относятся и т. Д., Если вы загляните в базу геоданных в проводнике Windows, это создаст отдельное приложение «статус», которое отслеживает файлы блокировок определенного класс объектов мы все используем.
Используя этот метод, я в режиме реального времени могу видеть с удобной для чтения приборной панели, у кого заблокирован этот класс объектов (в зависимости от имени компьютера), и какой тип блокировки у них есть. Например, если он видит блокировку "sr" (схема), я знаю, что к его оглавлению добавлен класс пространственных объектов, блокировка "rd" означает, что они читают из класса пространственных объектов, блокировка "wr" означает, что они пишут data и блокировка "ed" означают, что у них открыт сеанс редактирования в классе объектов.
Это очень полезно при выполнении технического обслуживания, чтобы можно было смотреть вниз и быть уверенным, что оно ни на кого не повлияет. Запись «Неизвестно» также предупреждает меня, когда кто-то неожиданно использует класс объектов, и я могу продолжить расследование.
Вот снимок экрана приборной панели, которую я использую.