在没有等待的情况下使用async

时间:2012-08-18 06:54:20

标签: c# asynchronous visual-studio-2012 async-await c#-5.0

我希望将函数设置为异步,因此我只需添加async,如下所示:

public async static void something(){
}

您可以看到其返回类型为void。我只是希望异步调用此函数而不阻塞,因为返回void所以不需要await

但是Visual Studio 2012无法编译它,它说我想念await

请问您在不使用async的情况下建议制作函数await的示例。

1 个答案:

答案 0 :(得分:31)

我想也许你误解了async的作用。警告完全正确:如果您标记方法async但不在任何地方使用await,那么您的方法将不会异步。如果你调用它,方法中的所有代码都将同步执行。

此外,您应该尽量避免使用async void方法,这会使处理异常变得困难。