所以问题是,在非静态类中为静态成员变量分配内存的时间和位置?这个变量也在堆中,它的dallocations也由垃圾收集器处理吗?
答案 0 :(得分:3)
存储位置是一个实现细节,但通常它应该在堆上。静态变量被认为是GC根,因此一旦AppDomain(因此在大多数情况下是您的应用程序)关闭,它们就会被垃圾收集器释放。
如果您想了解有关垃圾收集的更多信息,请查看以下文章:
http://www.simple-talk.com/dotnet/.net-framework/understanding-garbage-collection-in-.net/