我最近在List<>
和[]
上做了一些粗略的性能测试,测试了一系列小结构。 System.Array似乎赢了手,所以我去了。System.Array是否对值类型执行装箱操作?
它只是在我身上才明白System.Array包含对象类型,所以肯定用结构填充它会导致出现装箱?
然而,the MSDN entry for System.Array状态:
在.NET Framework 2.0版,Array类实现了
System.Collections.Generic.IList<T>
,System.Collections.Generic.ICollection<T>
和System.Collections.Generic.IEnumerable<T>
通用接口。在运行时向阵列提供 实现,因此 对文档构建工具不可见。因此,类 类的声明语法中没有出现通用的 接口,并且仅有通过将数组转换为通用接口类型 (显式接口实现)才能访问 的接口成员没有参考主题。 。
这是否意味着拳击不会发生? (并且会解释我的性能结果)
为了解释您的绩效结果,我们可能应该看到您用来衡量绩效的代码。 – Snowbear