C# 应用程序中的多个等待和异步方法
我正在将我们的数据层转换为一个相当大和复杂的WCF应用程序,以便与数据库异步通信 这导致C# 应用程序中的多个等待和异步方法,c#,.net,wcf,asynchronous,async-await,C#,.net,Wcf,Asynchronous,Async Await,我正在将我们的数据层转换为一个相当大和复杂的WCF应用程序,以便与数据库异步通信 这导致async和await在调用/消费代码中随处可见 查看一个典型请求的堆栈跟踪,我已经看到了System.Runtime.CompilerServices.TaskAwaiter的许多部分。我才刚刚开始这项任务 我知道.net在遇到async/await时会做什么,所以我的问题是:当从请求开始到结束的过程中产生了很多异步方法时,与async/await相关的额外开销值得吗?我理解异步调用数据库的好处,但是有限制
async
和await
在调用/消费代码中随处可见
查看一个典型请求的堆栈跟踪,我已经看到了System.Runtime.CompilerServices.TaskAwaiter
的许多部分。我才刚刚开始这项任务
我知道.net在遇到async
/await
时会做什么,所以我的问题是:当从请求开始到结束的过程中产生了很多异步方法时,与async
/await
相关的额外开销值得吗?我理解异步调用数据库的好处,但是有限制吗?特别是当调用应用程序相当大和复杂(或者更恰当地说是一个大而长的调用堆栈)时
谢谢。如果您担心代码的性能,只有一种方法可以确定:自己测量。我理解。这就是我打算做的。不过,我想了解其他开发人员在这方面的经验。