Не могу понять назначение контекста синхронизации в .net

Я не могу понять цель абстракции контекста синхронизации в .net.

Можно ли сказать, что контекст синхронизации — это абстракция над группой потоков (один или несколько), которую я буду называть по аналогии с термином «объектная модель» или «модель потока»? Я имею в виду синхронизацию. контекст скрывает от нас потоки, которые способны выполнять какую-то работу — они могут выполнять свои конкретные задачи (обновление пользовательского интерфейса или какую-то другую сложную работу), но нам не нужно знать как, у нас просто есть какой-то очень абстрактный интерфейс высокого уровня, такой как Post попросить их сделать что-то для нас. И все эти потоки специально предназначены для выполнения этой единственной работы.

Имеет ли это смысл? Могу ли я использовать термины «потоковая модель» и контекст синхронизации взаимозаменяемо?

Заранее спасибо.


comment
Взгляните на эту статью docs.microsoft.com/en-us/archive/msdn-magazine/2011/february/   -  person Pavel Anikhouski    schedule 03.02.2020
comment
А затем blog.stephencleary.com/2012/02/async-and- await.html и ссылки оттуда.   -  person GSerg    schedule 03.02.2020
comment
@PavelAnikhouski: Спасибо, другими словами, я могу думать о синхронизации. контекст, например, какая-то модель потоков (для какой-то конкретной работы). Это правильно?   -  person Sharov    schedule 03.02.2020
comment
@Sharov Нет. Асинхронность не связана с потоками, даже несмотря на то, что реализация асинхронности может использовать или не использовать потоки под капотом. См. stackoverflow.com/q/17661428/11683, stackoverflow.com/q/27265818/11683 и stackoverflow.com/q/37419572/11683.   -  person GSerg    schedule 03.02.2020
comment
Вероятно, это поможет, если вы попытаетесь понять его от его имени. Это контекст, в котором вы можете синхронизировать работу из разных потоков. Для UI-приложений контекстом обычно является основной поток, так что вся синхронизированная работа происходит последовательно в одном потоке.   -  person Lasse V. Karlsen    schedule 03.02.2020
comment
@Sharov, пожалуйста, прочитайте раздел Концепция SynchronizationContext в статье выше, я не думаю, что контекст синхронизации является потоковой моделью в любом аспекте.   -  person Pavel Anikhouski    schedule 03.02.2020
comment
@PavelAnikhouski: Спасибо за ссылку на msdn. Я уточняю свое понимание синхронизации. немного контекста. И да, я по-прежнему настаиваю на том, чтобы он абстрагировался от потоковой модели какой-то конкретной области, такой как ASP.net в ссылке выше. Как предполагает контекст слова, он содержит определенную (для домена) информацию, необходимую для обработки некоторой работы в очереди. И да, это тесно связано с выполнением обратных вызовов, когда нам нужно выполнять обратные вызовы в каком-то конкретном домене (контексте), таком как пользовательский интерфейс. Возможно, когда мы имеем дело с обратными вызовами, лучше смотреть на синхронизацию. контекст как планировщик.   -  person Sharov    schedule 04.02.2020