如何确定对象是否被回收了?

货郎大叔 2019-05-24 10:40:48
一个对象调用Remove方法之后,如何知道它是否被系统回收了呢?因为比如程序中还存在对它的引用的话,就不会被回收,但是很难知道哪些地方还存在对它的引用。比如如果存在定时器。
如何确定呢?
直接强制回收可不可以,有引用,也把它收了
...全文
88 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
OrdinaryCoder 2019-05-25
  • 打赏
  • 举报
回复
在析构函数里添个打印 有打印就是被回收了
wid999 2019-05-25
  • 打赏
  • 举报
回复

C#基本上不太用考虑垃圾回收的问题,除非在256M内存上跑。.NET运行环境会自动根据内存压力进行回收的。
当然,你也可以调用GC.Collect()进行垃圾回收。可以参考下MSDN的资料。
另外,有被引用的对象不会被回收,那样会导致指针指向无效内存。你得先释放。

110,566

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧