异步ADO.NET
我正在尝试编写一个查询 SQL Server 数据库的异步服务器,并且担心我的数据库端过于同步。具体来说,我可以异步调用 ExecuteReader,但无法异步调用 reader.Item,这花费了 57% 的时间(阻塞了我宝贵的线程!)。
这是我可以使用 ADO.NET 实现的最异步方式吗?还是有一种异步方式可以实现 reader.Item?
I'm trying to write an asynchronous server that queries a SQL Server database and am concerned that my DB side is too synchronous. Specifically, I can call ExecuteReader
asynchronously but cannot then call reader.Item
asynchronously and is where 57% of the time is spent (blocking my precious thread!).
Is this the most asynchronous I can do with ADO.NET or is there an asynchronous way to do reader.Item
as well?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
看起来这个问题将在下一版本的框架中得到修复:
DbDataReader.ReadAsync
和
DbDataReader.NextResultAsync
Looks like this issue is to be fixed in the next version of the framework:
DbDataReader.ReadAsync
and
DbDataReader.NextResultAsync