c#中的事件处理程序和应用程序生命周期对象 – 我应该解开吗?
发布时间:2020-12-15 07:43:53 所属栏目:百科 来源:网络整理
导读:假设我有一个在应用程序持续时间内存在的对象.我们称之为GlobalWorker. GlobalWorker有例如UserLoggedIn,其他对象可以订阅.现在想象一下,我有一个Silverlight页面或一个asp.net页面,它在构造时订阅了UserLoggedIn事件. public SomePage(){GlobalWorker.Insta
假设我有一个在应用程序持续时间内存在的对象.我们称之为GlobalWorker. GlobalWorker有例如UserLoggedIn,其他对象可以订阅.现在想象一下,我有一个Silverlight页面或一个asp.net页面,它在构造时订阅了UserLoggedIn事件.
public SomePage() { GlobalWorker.Instance.UserLoggedIn += new EventHandler(OnUserLoggedIn); } private void OnLoggedIn(object sender,EventArgs e) { } 是否存在此事件会阻止页面被垃圾回收?如果是这样,在这个实例中使用的最佳模式是什么:弱事件处理程序,将订阅移动到Load事件并取消订阅UnLoad事件? 解决方法
使用
Weak Events.
这是WPF中的常见问题,您可以考虑它. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |