Редактировал(а) Alexandr Fokin 2024/02/24 23:46

<
От версии < 2.4 >
отредактировано Alexandr Fokin
на 2022/07/29 03:38
К версии < 3.2 >
отредактировано Alexandr Fokin
на 2023/01/11 15:18
>
Изменить комментарий: Update document after refactoring.

Комментарий

Подробности

Свойства страницы
Родительский документ
... ... @@ -1,1 +1,1 @@
1 -Разработка.NET.C#.Многопоточность.Асинхронность\. Async Await.WebHome
1 +Разработка.NET.C#.Многопоточность и асинхронность.Асинхронность\. Async Await.WebHome
Содержимое
... ... @@ -11,20 +11,24 @@
11 11  )))|Сообщает, что необходимо задействовать механизм контекста синхронизации для кода, идущего после выхода из данной асинхронной операции.
12 12  |{{code language="c#"}}ConfigureAwait(false){{/code}}|Сообщает, что код, идущего после выхода из данной асинхронной операции, может быть выполнен в любом потоке из пула потоков.
13 13  
14 -Например во многих графических фремворках менять состояние контролов можно только из UI Thread, если после асинхронной операции нам необходимо изменить контрол, то нужна гарантия того, что код будет выполнен в UI Thead, а не любом Thread из ThreadPool. [[Потоки и задачи>>doc:Разработка.NET.C#.Многопоточность.Потоки и задачи.WebHome]]
14 +Например во многих графических фремворках менять состояние контролов можно только из UI Thread, если после асинхронной операции нам необходимо изменить контрол, то нужна гарантия того, что код будет выполнен в UI Thead, а не любом Thread из ThreadPool. [[Потоки и задачи>>doc:Разработка.NET.C#.Многопоточность и асинхронность2.Потоки и задачи.WebHome]]
15 15  
16 16  ----
17 17  
18 18  === DeadLock при async await. ===
19 19  
20 -В некоторых случаях при неправильном использовании возможны ситуации, когда есть контекст синхронизации (UI контекст основного ui потока, ASP контекст запроса)
21 -ConfigureAwait - указывает на то, должны ли операции продожаться в том же контексте после завершения await (или же они могут быть выполнены в любом контексте)
22 -[[devblogs.microsoft| ConfigureAwait FAQ>>url:https://devblogs.microsoft.com/dotnet/configureawait-faq/?utm_source=csharp&utm_medium=email&utm_campaign=digest]]
20 +В некоторых случаях при неправильном использовании возможны ситуации, которая приводит к взаимной блокировке потока и зависанию приложения.
23 23  
24 24  ----
25 25  
26 26  === Ссылки: ===
27 27  
26 +* ConfigureAwait FAQ
27 +[[devblogs.microsoft| ConfigureAwait FAQ>>url:https://devblogs.microsoft.com/dotnet/configureawait-faq/?utm_source=csharp&utm_medium=email&utm_campaign=digest]]
28 +* ConfigureAwait, кто виноват и что делать?
29 +[[https:~~/~~/habr.com/ru/company/clrium/blog/463587/>>url:https://habr.com/ru/company/clrium/blog/463587/]]
30 +* ConfigureAwait: часто задаваемые вопросы
31 +[[https:~~/~~/habr.com/ru/post/482354/>>url:https://habr.com/ru/post/482354/]]
28 28  * SynchronizationContext — когда MSDN подводит
29 29  https://habr.com/ru/post/232169/
30 30  * IT - записки программиста: Контексты исполнения (ExecutionContext) и синхронизации (SynchronizationContext) - что это такое и с чем их едят ?