c# - 数组中更改的项目是否进入垃圾收集?

标签 c# .net garbage-collection clr

我有两个由第一个继承的类。

然后我有这个:

First[] tab = new First[5];
tab[0] = new First();
tab[1] = new First();
tab[2] = new First();

我的问题是:如果我这样做:

tab[1] = new Second();

我第一次用来调用 tab[1] 的内存发生了什么?它转到垃圾收集器并且内存是免费的?

如果不是,我该怎么做才能释放它?

如有任何帮助,我们将不胜感激。

最佳答案

替换数组中的对象会导致该对象不再被数组引用。

与任何其他对象一样,如果没有其他根对象引用它,它最终将被垃圾回收。

关于c# - 数组中更改的项目是否进入垃圾收集?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10419625/

相关文章:

c# - 过滤集合 C# 的最快方法

java - 清除内存中的图像流

java - C# 从类型创建类的实例

c# - C#中如何抓取TCP数据包

c# - 单击 HTML 按钮时的 MVC 5 Razor 变量更改

c# - 空传播运算符

.net - 构建 x64 版本时出现 CS1607 编译器警告

c# - 使用反射(PrivateObject)进行测试

java - 生产服务器中的 tomcat 超出了 GC 开销限制

java - 如何确定给定程序中符合垃圾收集条件的对象?