最佳答案
通过阅读StackOverflow上的一些问题和答案,我才意识到在C#(或者我猜是其他.NET语言)中使用+=
来添加事件处理程序可能会导致常见的内存泄漏。
我过去曾多次使用这样的事件处理程序,但从未意识到它们会导致或已经导致我的应用程序中的内存泄漏。
这是如何工作的(意思是,为什么这实际上会导致内存泄漏)?
如何解决此问题?对同一事件处理程序使用-=
是否足够?
有没有常见的设计模式或最佳实践来处理这种情况?
示例:我应该如何处理具有许多不同线程的应用程序,使用许多不同的事件处理程序在UI上引发多个事件?
在已经构建的大型应用程序中,有没有好的、简单的方法来有效地监视这一点?