小编wiu*_*wiu的帖子

从内部等待某些任务的方法返回 ValueTask 是否有任何意义

我有一个异步方法,看起来大约像这样:

async Task<int> ParseStream()
{
    var a = await reader.ReadInt32();
    var b = await reader.ReadInt32();
    return a + b;
}
Run Code Online (Sandbox Code Playgroud)

由于数据已经准备好,因此该方法在大多数情况下都会同步工作。因此,用 ValueTask 替换返回类型以减少分配似乎是个好主意。但这会调用reader.ReadInt32()return Task。

所以问题是:从内部等待某些任务的方法返回 ValueTask 是否有意义?

c# async-await valuetask

5
推荐指数
1
解决办法
3802
查看次数

标签 统计

async-await ×1

c# ×1

valuetask ×1