我有一种需要在集合上迭代的方法(确切地说是DataRowCollection(。
当前的实现速度有点慢,所以我一直在试用更快的实现。我已经使用了BenchmarkDotnet将执行时间与相同的参数进行比较,并且给定足够大的集合而言,它明显更快。
我的怀疑是,如果收藏相对较小,情况就不会这样。因此,我真的很想比较两个尺度:哪个尺度更快的速度在1、10、100、1,000、10,000元素?
?我可以说的最好,BenchmarkDotnet对此没有内置设施。我想要的是将其引用到集合中,并以不同的尺寸或切片来执行方法。(例如,将其复制到不同尺寸的Ilists。(
基本上,最终以http://ridiculousfish.com/blog/posts/array.html
[Params(1, 10, 100, 1000, 10000)]
public int Size { get; set; }
然后在测试中使用Size
。它应该自动输出等。您还可以在任何预测试[GlobalSetup]
方法中使用参数化值,例如,在基准测试中不计数列表/数组。