相关疑难解决方法(0)

事件处理程序是否阻止垃圾收集发生?

如果我有以下代码:

MyClass pClass = new MyClass();
pClass.MyEvent += MyFunction;
pClass = null;
Run Code Online (Sandbox Code Playgroud)

pClass会被垃圾收集吗?或者它会在它们发生的时候仍然停止发射?我是否需要执行以下操作才能进行垃圾回收?

MyClass pClass = new MyClass();
pClass.MyEvent += MyFunction;
pClass.MyEvent -= MyFunction;
pClass = null;
Run Code Online (Sandbox Code Playgroud)

.net c# garbage-collection event-handling

178
推荐指数
3
解决办法
3万
查看次数

GC.Collect()和Finalize

好吧,众所周知,当GC将Finalize对象标识为垃圾时,它会隐式调用对象上的方法.但如果我这样做会发生什么GC.Collect()?终结者还在执行吗?也许是一个愚蠢的问题,但有人问我这个,我回答"是",然后我想:" 这完全正确吗? "

.net c# garbage-collection finalizer

45
推荐指数
4
解决办法
1万
查看次数

标签 统计

.net ×2

c# ×2

garbage-collection ×2

event-handling ×1

finalizer ×1