C# · 12月 27, 2021

c# – 将方法转换为静态方法时的内存使用情况

我开始使用Resharper,它表示当一个方法可以被静态.将数百种方法转换为静态方法会在很长一段时间内增加内存占用空间?解决方法 否 – 更改为静态方法对内存没有影响.

第一次引用一个类型(无论是静态还是非静态),任何静态成员都被初始化,并且运行静态构造函数.

但是,如果您只是考虑从非静态切换到静态切换方法,这将对垃圾回收或总内存占用没有影响.

如果将类成员更改为静态成员,则只需担心内存占用量的变化.在这种情况下,一旦访问了类型,静态字段将保持rooted状态,GC将不会被收集.这通常只在必要时进行,并且通过设计,您可以使成员静态,因为您希望它持续存在.