我是否需要取消注册asp.net中的事件
-
03-07-2019 - |
题
我有一个Web用户控件,其中包含其他几个(Web用户)控件,并订阅了孩子们提出的事件。
我在某个类似的情况下看到某人在包含控件上提供Dispose()并取消注册它已订阅的事件。
当请求处理完成时,这一切都不会被吹走吗? /取消注册那些必要的事件?
解决方案
由于在不再引用包含控件本身时,所包含的控件(事件发布者)将不再被任何引用引用,因此应该对它们进行垃圾回收。当发生这种情况时,包含控件也可以被垃圾收集。由于这些对象都属于同一代,我不知道如何更快地收集容器。取消注册事件处理程序似乎没有必要。如果事件发布者是比容器更长寿的对象,那么它会有所帮助。
有关详细信息,请参阅此讨论。
其他提示
我认为这不是必要的步骤。
正如您所说,页面(及其所有控件)在每次回发时都会重新创建,因此没有必要
不隶属于 StackOverflow