C# · 12月 23, 2021

c# – 垃圾收集器和静态类,变量

自从过去几天以来,有一点在我心中疑惑.
我想知道垃圾收集器如何使用静态类,变量?

众所周知,垃圾收集器会跟踪已在应用程序中创建的对象,并在不再使用时自动将其删除.
对于静态类,不会创建任何对象,并使用应用程序调试将其加载到内存中.

那么垃圾收集器处理静态类?

解决方法 静态类不需要被删除,因为它们不是对象,并且它们不消耗内存(除了.NET基础结构加载的实际类代码之外).另一方面,静态类中的静态字段是消耗内存的对象.它们不会被收集,因为它们可以在应用程序的整个生命周期内访问.如果要释放内存,则应将该字段设置为null,以便该字段指向的对象符合GC的条件