Изменения документа Имитация асинхронного (Async) Deadlock
Редактировал(а) Alexandr Fokin 2024/03/23 17:02
<
отредактировано Alexandr Fokin
на 2024/03/23 17:02
на 2024/03/23 17:02
отредактировано Alexandr Fokin
на 2024/03/23 16:54
на 2024/03/23 16:54
Изменить комментарий:
К данной версии нет комментариев
Комментарий
-
Свойства страницы (1 изменено, 0 добавлено, 0 удалено)
Подробности
- Свойства страницы
-
- Содержимое
-
... ... @@ -1,9 +1,7 @@ 1 -| |В данном примере мы имитируем ограничение на использование одного потока (которые возникает в некоторых типах приложений, [[SynchronizationContext ~~| Контекст синхронизации>>doc:Разработка.NET.C#.Многопоточность и асинхронность.Асинхронность\. Async Await.SynchronizationContext | Контекст синхронизации.WebHome]]). 2 -После этого мы блокируем поток синхронным ожидаем, из-за чего асинхронная задача не может выполнить продолжение (continuation), т.к. она тоже запланирована на выполнение в этом (заблокированном) потоке. 1 +| | 3 3 | |[[Асинхронность. Async Await>>doc:Разработка.NET.C#.Многопоточность и асинхронность.Асинхронность\. Async Await.WebHome]] 4 4 [[Проблемы>>doc:Разработка.NET.C#.Многопоточность и асинхронность.Асинхронность\. Async Await.Проблемы.WebHome]] 5 5 | |[[Task Factory>>doc:Разработка.NET.C#.Многопоточность и асинхронность.Task Factory.WebHome]] 6 -[[SynchronizationContext ~~| Контекст синхронизации>>doc:Разработка.NET.C#.Многопоточность и асинхронность.Асинхронность\. Async Await.SynchronizationContext | Контекст синхронизации.WebHome]] 7 7 | |{{code language="C#"}}[TestMethod] 8 8 public async Task AsyncDeadlockTest1Async() 9 9 {