Будет ли Task.When выполнять все задачи одновременно, если это возможно? - PullRequest
0 голосов
/ 28 декабря 2018

Я имею в виду, если у меня есть две задачи async Task<Data1> GetData1Async() и async Task<Data2> GetData2Async(), и я что-то делаю таким образом:

var getTask1 = GetData1Async();
var getTask2 = GetData2Async();

await Task.WhenAll(getTask1, getTask2);

var result1 = getTask1.Result;
var result2 = getTask2.Result;

Есть ли шанс для GetData1Async и GetData2Async работать параллельно?

1 Ответ

0 голосов
/ 28 декабря 2018

Task.WhenAll просто ожидает две задачи, не запускает их.

Если два метода GetDataXAsync действительно асинхронны и к моменту вызова Task.WhenAll они еще не завершены, тода, они будут выполняться параллельно.

...