Владислав, нашел небольшую ошибку у вас в статье. В случае с
Original ASP.NET AspNetSynchronizationContext
выполнение может продолжиться на любом потоке из ThreadPool. Блокировка при синхронном вызове в этом случае происходит из-за внутреннего механизма самого AspNetSynchronizationContext, который позвляет захваченному контексту выполняться только на одном потоке, который заблокирован. Я не возьмусь сейчас описать механизм в деталях, думаю, вот эти ссылки могут помочь: blog.stephencleary.com/...-block-on-async-code.html docs.microsoft.com/...he-synchronizationcontext
Владислав, нашел небольшую ошибку у вас в статье. В случае с
выполнение может продолжиться на любом потоке из ThreadPool. Блокировка при синхронном вызове в этом случае происходит из-за внутреннего механизма самого AspNetSynchronizationContext, который позвляет захваченному контексту выполняться только на одном потоке, который заблокирован. Я не возьмусь сейчас описать механизм в деталях, думаю, вот эти ссылки могут помочь:
blog.stephencleary.com/...-block-on-async-code.html
docs.microsoft.com/...he-synchronizationcontext