等待多个函数参数时的性能

Oma*_*oup 1 c# async-await

等待多个函数参数会提高性能吗?与非异步函数相比,参数函数是并行执行还是没有性能提升?

示例代码:

var result = GetGesult(await Func1(), await Func2(), await Func3(), await Func4());
Run Code Online (Sandbox Code Playgroud)

Fab*_*bio 8

异步函数将一个接一个执行。

在将结果分配给下一个函数的参数之前,您可以开始全部并等待全部完成。

var func1Task = Func1();
var func2Task = Func2();
var func3Task = Func3();
var func4Task = Func4();

await Task.WhenAll(func1Task, func2Task, func3Task, func4Task)

var result = 
    GetGesult(await func1Task , await func2Task, await func3Task, await func4Task);
Run Code Online (Sandbox Code Playgroud)

  • `Task.WhenAll` 真的有必要吗?我希望方法调用参数中的“await”能达到相同的效果。 (3认同)