考虑这个课程:
Class Item : Inherits ItemBase
Public Sub New
AddHandler MyEvent, AddressOf MyEventHandler
End Sub
Private Sub MyEventHandler()
End Sub
Private Sub MySecondEventHandler() Handles MyBase.MyEvent
End Sub
End Class
我是否必须在销毁此项目时手动删除处理程序?这不是由GC或托管代码编译器的其他工具完成的吗?
答案 0 :(得分:0)
在对它的所有引用都已消失(包括所有事件处理程序)之前,对象不会被Garbage Collected,也不会被销毁,直到它被Garbage Collected。你真正需要做的是删除同一个类中的处理程序,一旦你完成它们就会添加处理程序。
答案 1 :(得分:0)
如果你的对象被标记为死,这意味着没有对它的引用,它的内部引用现在来自死对象,并且从这一点开始无关紧要。因此,您不必手动删除处理程序。