I'm running the following code in LINQPad:
void Main()
{
Task x = TestAsync();
do
{
Thread.Sleep(200);
Console.WriteLine(x.Status);
} while (x.Status != TaskStatus.RanToCompletion);
}
public async static Task TestAsync()
{
await Task.Delay(1000);
return;
}
The output is:
WaitingForActivation
WaitingForActivation
WaitingForActivation
WaitingForActivation
RanToCompletion
Why does it go directly from WaitingForActivation
to RanToCompletion
? Why is it apparently never in the Running
state?