Что использовать вместо оператора «lock», когда код выполняется на нескольких машинах?

lock заявление гарантирует, что один поток не входит в критическую секцию кода, в то время как другой поток находится в критической секции. Однако это не будет работать, если рабочая нагрузка распределена по ферме серверов (например, несколько серверов IIS + балансировщик нагрузки).

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

Если нет, есть ли какой-нибудь стандартный метод решения таких проблем?

Этот вопрос был вдохновленобсуждение, которое началось здесь но не ограничивается SharePoint или ASP.NET.

Ответы на вопрос(5)

Ваш ответ на вопрос