жду vs Task.Wait - тупик?

Я нене совсем понимаю разницу междуTask.Wait а также .await

У меня есть что-то похожее на следующие функции в службе ASP.NET WebAPI:

public class TestController : ApiController
{
    public static async Task Foo()
    {
        await Task.Delay(1).ConfigureAwait(false);
        return "";
    }

    public async static Task Bar()
    {
        return await Foo();
    }

    public async static Task Ros()
    {
        return await Bar();
    }

    // GET api/test
    public IEnumerable Get()
    {
        Task.WaitAll(Enumerable.Range(0, 10).Select(x => Ros()).ToArray());

        return new string[] { "value1", "value2" }; // This will never execute
    }
}

кудаGet будет тупик

Что может вызвать это? Почему нетt это вызывает проблему, когда я использую блокирующее ожидание, а не?await Task.Delay

Ответы на вопрос(2)

Ваш ответ на вопрос