垃圾回收
1.垃圾回收回收什么东西?
垃圾回收只会回收托管堆中的资源
2什么样的对象会被回收?
Person p1=new Person();
p1.Age=10;
p1.Name="xx";
p1=null;
当Person这个对象不再被任何一个变量引用是就可以回收了。
而当
Person p1=new Person();
p1.Age=10;
p1.Name="xx";
Person p2=p1;
p1=null;
虽然p1指向的是空地址,但是p2指向的仍然是Person对象的地址,所以不能被回收;
只要有变量引用该对象就不能被回收
3.什么时候被回收?
这个不确定。
千万不要手动垃圾回收GC.Collect();
因为手动垃圾回收会是短暂程序暂停,还会打乱原本的回收机制,得不偿失!
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步