Заявление о блокировке

Автор: Lewis Jackson
Дата создания: 8 Май 2021
Дата обновления: 15 Май 2024
Anonim
Instagram заблокировали. YouTube и WhatsApp — следующие! Что делать? Отмена России #5
Видео: Instagram заблокировали. YouTube и WhatsApp — следующие! Что делать? Отмена России #5

Содержание

Определение - что означает заявление о блокировке?

Оператор блокировки в C # - это оператор, который содержит ключевое слово «lock» и используется в многопоточных приложениях, чтобы гарантировать, что текущий поток выполняет блок кода до завершения без прерывания другими потоками. Оператор блокировки получает блокировку взаимного исключения для данного объекта, так что один поток выполняет блок кода одновременно и выходит из блока кода после снятия блокировки.


Оператор блокировки - это эксклюзивная конструкция блокировки, используемая для обеспечения синхронизированного доступа к общим данным в многопоточных приложениях. Это помогает защитить целостность изменчивого ресурса, который совместно используется несколькими потоками, не создавая помех между этими потоками. Оператор блокировки может использоваться одноэлементным объектом для предотвращения одновременного доступа его общих данных к нескольким клиентам.

Оператор блокировки - это основной примитив синхронизации, доступный в библиотеке классов .NET Framework. Он автоматически генерирует согласованный и безопасный для исключений код, который может обрабатывать потребности синхронизации в многопоточных программах. Он также предоставляет простой способ управления синхронизацией путем создания эффективного кода, который предотвращает ошибки, которые могут быть вызваны написанным вручную кодом.

Введение в Microsoft Azure и Microsoft Cloud | Из этого руководства вы узнаете, что такое облачные вычисления и как Microsoft Azure может помочь вам перенести и запустить свой бизнес из облака.

Техопедия объясняет заявление о блокировке

Оператор блокировки должен быть снабжен аргументом ссылочного типа, а не типа значения. В общем случае рекомендуется заблокировать закрытый элемент экземпляра или частный статический член, чтобы защитить данные, которые используются всеми экземплярами объекта. Поскольку блокировка для открытого типа или экземпляров, которые находятся вне контроля кода, может привести к ситуациям взаимоблокировки, когда несколько потоков ожидают освобождения одного объекта, используемого для оператора блокировки, их следует избегать.

Примером использования оператора блокировки может быть многопоточное приложение, в котором объект счета с методом для снятия баланса использует оператор блокировки, чтобы предотвратить одновременное выполнение несколькими потоками одного и того же метода, что может привести к переводу баланса в отрицательное число. ,

Тело оператора блокировки должно быть небольшим, чтобы уменьшить время, необходимое для других потоков, ожидающих блокировки, уменьшая вероятность тупиковой ситуации и сводя к минимуму вероятность возникновения исключения.

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


Это определение было написано в кон C #