Несколько блоков кода, заблокированных одним и тем же объектом

Если у меня есть что-то вроде этого:

private readonly object objectLock = new object();

public void MethodA()
{
    lock(objectLock)
    {
      //do something
    }
}

public void MethodB()
{
    lock(objectLock)
    {
      //do something
    }
}

Если у меня есть 2 потока и оба приходят одновременно, первый поток вызывает MethodA, а второй Method B. Тот, который приходит первым и блокирует objectLock, я предполагаю, что другой поток сидит и ждет, пока objectLock больше не будет заблокирован.

9
задан Erno 20 October 2011 в 10:28
поделиться