async Task<int> Calculate1()返回值为什么既是int又是task?
来源:14-11 【操作】Await async 真香
2227181
2023-06-06
var result1 = await Calculate1();,鼠标放到result1上,VS会提示它是int。
Calculate1().Wait(); ,Wait()是Task的方法,Calculate1()的返回值又成了Task。
C#是如何通过Task把一个函数的返回值表现为int和task两种形式的?请老师指点一下,谢谢。
写回答
1回答
-
阿莱克斯刘
2023-06-27
主要看你怎么调用,在调用的时候
如果你不使用await, 那么它返回task
但如果你加上await,如: var ddd = await Calculate() ,那么它的返回值为int。
这是c#的语言特性所决定的。
00
相似问题