SynchronizationContext | Контекст синхронизации

Версия 4.2 от Alexandr Fokin на 2024/02/24 23:45

 Понятие контекста синхронизации.
 Не все типы приложений и фреймворки содержит такой компонент как контекст синхронизации.
Его основная цель - реализация механизма определения того, в каком потоке будет продолжаться выполнение кода после выхода из асинхронного ожидания (await).
 
// (По умолчанию)
ConfigureAwait(true)
Сообщает, что необходимо задействовать механизм контекста синхронизации для кода, идущего после выхода из данной асинхронной операции.
ConfigureAwait(false)Сообщает, что код, идущего после выхода из данной асинхронной операции, может быть выполнен в любом потоке из пула потоков.
 Например:
Во многих графических фреймворках менять состояние контролов можно только из UI Thread, если после асинхронной операции нам необходимо изменить контрол, то нужна гарантия того, что код будет выполнен в UI Thead, а не любом Thread из ThreadPool. Потоки и задачи 
 
Ссылки 

Внутренние ссылки:

Дочерние страницы:
Обратные ссылки:

 

Теги: