Вы всегда можете вызвать статический TryEnter
метод для Monitor
класса , используя значение 0 для ожидаемого значения. Если он заблокирован, то вызов вернет false.
Однако проблема здесь в том, что вам нужно убедиться, что список, к которому вы пытаетесь синхронизировать доступ, заблокирован сам по себе для синхронизации доступа.
Как правило, плохой практикой является использование объекта, доступ к которому синхронизируется, в качестве объекта для блокировки (слишком много внутренней информации об объекте).
Помните, что блокировка может быть связана с чем угодно, поэтому просто вызывать это в этом списке бессмысленно, если только вы не уверены, что этот список заблокирован.