C# 6.0:在catch和finally中使用await

Asyn方法是一个现在很常用的方法,当使用async和await时,你或许曾有这样的经历,就是你想要在catch块或finally块中使用它们,比如当出现一个exception而你希望将日志记在文件或者调用一个服务将exception信息发送给server,而这些操作可能很耗时。这种情况下,在catch块中的异步方法中使用await将会很有帮助。而这已经被添加到了C# 6.0 中。

在finally块中也一样,我们也可以使用await来调用async 方法。

下面的代码块显示了怎么用它们。

public async Task SubmitDataToServer()
{
try
{
// Submit Data
}
catch
{
await LogExceptionAsync();
}
finally
{
await CloseConnectionAsync();
}
}

这是一个很普通的在catch块和finally块中使用await的情形,而这个特性将会对开发者带来很大的便利。

上一篇:Linux 系统内核空间与用户空间通信的实现与分析-NETLINK (转载)


下一篇:Git rebase命令实战