You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

.NET中‘异步ValueTask摊销无分配’特性去向问询

关于.NET中近似无分配ValueTask特性的疑问

Steven Toub在.NET 5中引入了近似无分配的ValueTask<T>实现,相关性能对比数据如下:

Method           Runtime        Mean       Ratio    Allocated
ValueTaskCost   .NET FW 4.8     1,635.6 us  1.00    294010 B
ValueTaskCost   .NET Core 3.1   842.7 us    0.51    120184 B
ValueTaskCost   .NET 5.0        812.3 us    0.50    186 B     <--- !

我最早从Dapper作者Marc Gravell的文章中了解到这个特性,他建议几乎始终使用ValueTask替代Task(有意思的是Dapper本身并没有遵循这个建议)。

该特性过去可通过环境变量DOTNET_SYSTEM_THREADING_POOLASYNCVALUETASKS启用,但现在这个环境变量在.NET中已经不存在了。

想请教:这个特性发生了什么变化?是因为技术原因被移除,还是已经设为默认特性?


内容的提问来源于stack exchange,提问作者Charles Burns

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.03 21:34:58