4

你好朋友我想知道一些异步方法的返回类型对其行为的影响,就像我有一个名为 methodasync1() 的方法一样

private async void methodasync1(filename)
{
    await getfileaysnc(filename);
}

和其他函数方法async2() 像

private async Task methodasync2(filename)
{
    await getfileasync(filename);
}

两个功能是否以相同的方式工作或有任何区别。还有任何我应该知道的概念请告诉我任何想法和帮助

4

1 回答 1

5

当方法返回类型为 void 时,不能等待它,它本质上是“一劳永逸”。因此,在您的情况下调用 methodasync1 的方法无法知道它何时实际完成。在第二种情况下,methodasync2,由于您正在返回一个任务,因此可以等待它,因此调用方法可以知道它何时实际完成。

于 2013-09-12T05:11:53.857 回答