Мне просто интересно, для чего нужен метод? В каком сценарии я могу использовать этот метод.
Моя первоначальная мысль - RunSynchronously
- это вызов метода async и запуск этого синхронно, не вызывая проблемы с тупиковой ситуацией, как то, что .wait()
.
Однако, согласно MSDN,
Обычно задачи выполняются асинхронно в потоке пула потоков и не блокируют вызывающий поток. Задачи, выполняемые вызовом метода RunSynchronously(), связаны с текущим TaskScheduler и выполняются в вызывающем потоке. Если целевой планировщик не поддерживает выполнение этой задачи в вызывающем потоке, задача будет запланирована для выполнения в расписании, а вызывающий поток будет блокироваться до завершения выполнения задачи
Зачем нужен TaskScheduler здесь, если задача будет запущена в вызывающем потоке?