Информация об изменениях

Сообщение Умный синхронизатор от 14.11.2020 12:10

Изменено 14.11.2020 12:11 Barbar1an

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

пусть у нас куча методов которвые вызываются асинхронно

Mathod1()
{
    lock(resource){}
}

Method2()
{
    Mathod1(); // норм
}

Method3()
{
    lock(resource)
    {
        Mathod1(); // дедлок, но нафига? если мы знаем, что если наш мютекс захвачен тем же потоком, то мы смело можем просто проигнорировать вложенный лок, ибо выполнение и так уже синхронное
    }
}



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

пусть у нас куча методов которвые вызываются асинхронно

Method1()
{
    lock(resource)
    {
    }
}

Method2()
{
    Mathod1(); // норм
}

Method3()
{
    lock(resource)
    {
        .....
        Method1(); // дедлок, но нафига? если мы знаем, что если наш мютекс захвачен тем же потоком, то мы смело можем просто проигнорировать вложенный лок, ибо выполнение и так уже синхронное
        .....
    }
}



такое и руками наверно можно написать, но если в дотнете что такое готвое?