这种公共异步方法有什么用?怎么用?

时间:2014-01-29 04:47:06

标签: c#

public async void method() {
}

这种公共异步方法有什么用?它是如何使用的?

3 个答案:

答案 0 :(得分:2)

请参阅:http://msdn.microsoft.com/en-us/library/hh156513.aspx

通过使用 async 修饰符,您可以指定方法lambda expressionanonymous method是异步的。如果在方法或表达式上使用此修饰符,则将其称为异步方法。

public async Task<int> ExampleMethodAsync()
{
    // . . . .
}

如果您不熟悉异步编程,可以在Asynchronous Programming with Async and Await (C# and Visual Basic)中找到介绍。

异步方法提供了一种方便的方法来执行可能长时间运行的工作,而不会阻塞调用方的线程。异步方法的调用者(例如,M1)可以在不等待异步方法完成的情况下恢复其工作。但是,M1通常使用 await 关键字,以便它立即返回,允许M1的调用者恢复工作或返回线程的同步上下文(或消息泵)。

答案 1 :(得分:1)

async关键字是用于实现异步方法的语法糖。 本文更多地解释了概念http://msdn.microsoft.com/en-us/library/hh191443.aspx

答案 2 :(得分:1)

它像其他方法一样使用。除了异步执行外没有区别。如果您将返回类型更改为TaskTask<T>,那么它将是等待的。