且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

Dev 显式注册的EvenHandler要显式注销以避免内存泄漏

更新时间:2022-08-18 14:27:10

        将一个成员方法注册到某个对象的事件会造成后者持有前者的引用。在事件注销之前,前者不会被垃圾回收。

private void Form1_Load()
{
……
//注册事件
CommandRemotingContext.CmdChanged += new ReciverCmdStateChangedEventHandler(this.CommandRemotingContext_CmdChanged);
……
}
private void Form1_FromClosed()
{
……
//关闭窗体时及时释放事件
CommandRemotingContext.CmdChanged -= new ReciverCmdStateChangedEventHandler(this.CommandRemotingContext_CmdChanged);
……
}