c# -静态集合与作为单例字段的集合的性能

本文关键字:集合 单例 字段 性能 静态 | 更新日期: 2023-09-27 17:50:29

我想问一下,对象集合的静态引用与拥有单例类和将集合作为单例类的普通字段之间是否存在性能差异。

据我所知,静态字段存储在堆的不同部分,所以在这种情况下使用单例时,引用的局部性不是更好吗?

c# -静态集合与作为单例字段的集合的性能

静态存储唯一慢的是对静态字段的读写。在从静态字段中获得集合实例或单例实例之后,没有性能差异。你现在有一个对象引用,并且不再接触静态存储。

注意,从静态字段引用的对象的内存不存储在该字段的中。它存储在堆上。只有对它的引用是静态存储。

静态存储和实例存储之间的性能差异也非常小。

现在,哪个更快?单例实例的变体速度较慢,因为您必须通过两次内存遵从操作来访问集合,而不是一次。