Явное указание TaskScheduler для неявно запланированного метода

У меня есть следующий метод, который использует неявное планирование:

private async Task FooAsync()
{
   await Something();
   DoAnotherThing();
   await SomethingElse();
   DoOneLastThing();
}

Однако с одного конкретного сайта вызова я хочу, чтобы он выполнялся на низкоприоритетном планировщике вместо стандартного:

private async Task BarAsync()
{
   await Task.Factory.StartNew(() => await FooAsync(), 
      ...,
      ...,
      LowPriorityTaskScheduler);
}

Как мне этого добиться? Кажется, что это очень простой вопрос, но у меня полный умственный блок!

Примечание: я знаю, что пример не будет компилироваться :)

5
задан Lawrence Wagerfield 27 January 2012 в 18:01
поделиться