Lock.EnterScope Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Вводит блокировку, ожидая при необходимости, пока блокировка не будет введена.
public:
System::Threading::Lock::Scope EnterScope();
public System.Threading.Lock.Scope EnterScope ();
member this.EnterScope : unit -> System.Threading.Lock.Scope
Public Function EnterScope () As Lock.Scope
Возвращаемое значение
Объект , Lock.Scope который можно удалить для выхода из блокировки.
Исключения
Блокировка достигла предела повторяющихся записей в текущем потоке. Ограничение определяется реализацией и должно быть достаточно высоким, чтобы он не был достигнут в обычных ситуациях.
Комментарии
Если блокировка не может быть введена немедленно, метод ожидает, пока блокировка не будет введена. Если блокировка уже удерживается текущим потоком, блокировка вводится снова. Чтобы полностью выйти из блокировки и разрешить другим потокам войти в блокировку, текущий поток должен удалить возвращенный Lock.Scope для выхода из блокировки столько раз, сколько он входил в блокировку.
Этот метод предназначен для использования с языковой конструкцией, которая автоматически удаляет Lock.Scope, например ключевое слово C# using
.
Дополнительные сведения см. в примечаниях к описанию Lock.