2010-01-20 159 views
2

我有一个BackgroundWorker对象,我实例化后台线程上的数据库进程异步执行。我有事件处理程序DoWor k和RunWorkerCompletedBackgroundWorker事件处理程序

我可以告诉BackgroundWorker处置本身,因为我在Disposed事件处理程序中添加了MessageBox

我的问题是这样的:

是否有必要拆除事件处理程序,以确保内存清理,有没有内存泄漏?

回答

6

如果发生事件发布者正在垃圾收集,那么就没有必要退订了。如果事件订户(处理程序委托的目标)需要在发布服务器之前有资格进行垃圾回收,则只需要取消订阅事件。