2009-06-25 2 views

ответ

13

Lock documentation :

Обратите внимание, что экземпляры блокировки - это только normal ob и сами могут быть , используемые в качестве цели в синхронизированном операторе . Приобретение блокировки монитора экземпляра блокировки не имеет отношения с вызовом метода lock() этого экземпляра. Это рекомендуется, чтобы во избежание путаницы вы никогда не использовали блокировки в этом способах, за исключением собственных .

Таким образом, в основном, это рассматривается как любой другой объект. И не делай этого.

+0

Почему «Не делай этого»? – hhafez

+2

@hhafez: «Не делайте этого», потому что в документации говорится: «Чтобы избежать путаницы, вы никогда не используете экземпляры блокировки таким образом, за исключением их собственной реализации». –

+3

FindBugs найдет эту ошибку. –

3

Он будет обрабатывать замок так же, как и любой другой объект.

-1

Оператор блокировки на языке программирования C# может применяться для ограничения доступа к определенной части кода только к одному потоку за раз.

+2

Это вопрос Java, а не вопрос C#. (Я не проголосовал.) –

Смежные вопросы