gpt4 book ai didi

c# - 在同一个 SqlDataReader 上混合异步和非异步调用是否存在任何已知问题?

转载 作者:太空宇宙 更新时间:2023-11-03 13:11:13 24 4
gpt4 key购买 nike

例如,我打开一个异步连接。我异步执行我的阅读器。我开始像往常一样使用我的阅读器:

if (await reader.NextResultAsync())
{
while (await reader.ReadAsync())
{
//work
}
}

然后我在同一个阅读器上做了一个非异步版本:

if (reader.NextResult())
{
while (reader.Read())
{
//Work
}
}

这是否会导致任何已知问题?我正在审查一些遗留代码,这显然是不一致的;但是像这样混合它们会在运行时引起任何问题吗?

谢谢,

最佳答案

这不会导致任何问题。

事实上,这并不总是一个坏主意。异步调用比同步调用有更多的开销。异步获取读取器和结果集(因为这可能需要很长时间)然后同步读取行(因为每一行可能很快可用)是合理的。

关于c# - 在同一个 SqlDataReader 上混合异步和非异步调用是否存在任何已知问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28565804/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com