Если у меня есть метод, который вызывает другой метод в этом стиле:
private void MyMethod()
{
// get a command object in a queue to process.
var currentObject = this.Queue.Pop();
// now call itself recursively for next command object in queue...
Task.Run(async () => {
// begin awaited async execution of the command object...
// end of execution
// do a recursive call once awaited async operation above is done
this.MyMethod();
});
}
У меня в основном есть очередь объектов, которые мне нужно выполнить в асинхронном режиме. Где каждый последовательный объект не выполняется до тех пор, пока не завершится предыдущий.
Имеют ли эти рекурсивные вызовы асинхронных c задачи, влияющие на производительность и / или отрицательные побочные эффекты?