gpt4 book ai didi

c# - 从 SqlDataReader 异步读取每个字段有什么好处吗?

转载 作者:可可西里 更新时间:2023-11-01 03:00:12 24 4
gpt4 key购买 nike

异步读取字段有什么好处吗?

假设我有以下内容:

SqlDataReader reader = await cmd.ExecuteReaderAsync();
while (await reader.ReadAsync())
{
try
{
if (reader.IsDBNull(COL_NAME))
{
continue;
}

user = new User();
user.Id = reader.GetInt32(COL_ID);

使用 IsDBNullAsyncGetInt32Async 等是否会给现实世界带来任何好处?

最佳答案

在浏览了一些反射器之后,这里有趣的方法(GetFieldValueAsync<T>IsDBNullAsyncinternal 方法GetBytesAsync)只为CommandBehavior.SequentialAccess 做“有趣”的代码。设想。所以:如果你不使用它:不要打扰 - 行数据已经缓冲在内存中,并且 Task<T>是纯粹的开销(尽管它至少是一个已经完成的任务结果,即 Task.FromResult<T> - 由 await 有效处理,无需上下文切换)。

关于c# - 从 SqlDataReader 异步读取每个字段有什么好处吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19894975/

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