小编use*_*332的帖子

Array.Empty<int>():为什么 Rider 显示已发生分配,但 BenchmarkDotNet 却没有?

第一张图片中使用的记忆工具来自 Rider。据我所知,它显示了托管堆的分配。第二张图显示了 BenchmarkDotNet 的结果。

为什么 Rider 显示已进行分配,但 BenchmarkDotNet 表明未对堆进行分配?

如果我改用下面的代码示例,BenchmarkDotNet 会选择分配:

var i = new int[0];
Run Code Online (Sandbox Code Playgroud)

骑手记忆工具结果

BenchmarkDotNet 结果

.net c# benchmarking allocation

3
推荐指数
1
解决办法
349
查看次数

标签 统计

.net ×1

allocation ×1

benchmarking ×1

c# ×1