Lock ( выражение ) блок_операторов

Выражение определяет объект, который требуется заблокировать. Для обычных методов в качестве выражения используется ключевое слово this, для статиче­ских — typeof(класс). Блок операторов задает критическую секцию кода, которую требуется заблокировать.

Например, блокировка операторов в приведенном ранее методе Do выглядит сле­дующим образом:

public void Do()

{

lock(this)

{

for (int i = 0; i < 4; ++i)

{

Console.Write(" " + i);

Thread.Sleep(30);

}

}

}

Для такого варианта метода результат работы программы изменится:

Поток Second

Поток Third

0 1 2 3 0 1 2 3


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: