Я пытаюсь подавить поток контекста выполнения через асинхронные потоки.
Просто нужно спросить: почему?
Я написал код ниже, но он выдает ошибку
Эта ошибка возникает при восстановлении потока контекста выполнения в другом потоке, в котором вы его приостановили.
Чтобы исправить эту ошибку, просто не используйте await
в блоке using
:
Task task;
using (ExecutionContext.SuppressFlow())
task = Switch.Instance.SwitchOn();
await task;
Сохраняя код в using
синхронно, вы гарантируете, что остаетесь в том же потоке.