Async-Rekursion. Wohin geht mein Gedächtnis eigentlich?

Dies wird mehr aus Neugier gefragt als in Bezug auf ein reales Problem.

Betrachten Sie den folgenden Code:

void Main()
{
    FAsync().Wait();
}

async Task FAsync()
{
    await Task.Yield();
    await FAsync();
}

In der synchronen Welt würde dies letztendlich einen Stackoverflow verursachen.

In der asynchronen Welt verbraucht dies einfach eine Menge Speicher (von dem ich annehme, dass es mit etwas zusammenhängt, das ich locker den "asynchronen Stapel" nennen könnte?)

Was genau sind diese Daten und wie werden sie gespeichert?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage