虽然文章很少,但还是有的.引用一下

http://www.codeproject.com/KB/cs/WeakEvents.aspx

http://www.cnblogs.com/rickiedu/archive/2007/03/15/676021.aspx

http://www.cnblogs.com/Curry/archive/2008/10/30/1322647.html

事件一般都是内存泄露的源泉

建议参考此篇http://www.cnblogs.com/rickiedu/archive/2007/03/15/676021.aspx

情况如下若Window1=>Open Window2,Window2中注册了一个事件在WindowBehavior类,

若关闭Window2然后GC一下就没什么事情了.

如果只有Window2,在程序未关闭之前,那么注册在WindowBehavior中的事件就无法销毁掉,就造成了内存泄露.如果使用了弱引用事件当调用GC的时候,内部会去调用WeakEventManager的方法以释放事件(这个就是.net内部的事情了).

我们所需要做的就是实现WeakEventManager和IWeakEventListener

转载于:https://www.cnblogs.com/Clingingboy/archive/2010/12/07/1899194.html

弱事件 WeakEvent相关推荐

  1. 【转】C#中的弱事件:不同的解决方法

    中文原文:http://www.itgrass.com/a/csharp/C-sl/200811/05-8388.html 英文出处:http://www.codeproject.com/KB/cs/ ...

  2. [AaronYang]C#人爱学不学8[事件和.net4.5的弱事件深入浅出]

    没有伟大的愿望,就没有伟大的天才--Aaronyang的博客(www.ayjs.net)-www.8mi.me 1. 事件-我的讲法 老师常告诉我,事件是特殊的委托,为委托提供了一种发布/订阅机制. ...

  3. WPF学习笔记(三)

    1.1 事件概括 第一节中我们给窗体添加了一个按钮,不过好像Button点个几下也只有些发光样式的变化,什么你还把系统皮肤去掉了?算了承认下确实够寒碜,那让我们再动动手. 1.1.1 路由事件简述 p ...

  4. 委托、Lambda表达式和事件

    1. 引用方法 委托是寻址方法的.NET版本.在C++中,函数指针只不过是一个指向内存位置的指针,它不是类型安全的.我们无法判断这个指针实际指向什么,像参数和返回类型等项就更无从知晓了.而.NET委托 ...

  5. 5种避免C#.NET中因事件造成内存泄漏的技术

    原文来自互联网,由长沙DotNET技术社区编译. 5种避免C#.NET中事件造成的内存泄漏的技术 C#(通常是.NET)中的事件注册是内存泄漏的最常见原因.至少从我的经验来看.实际上,我从事件中看到了 ...

  6. 【网易游戏面试题】.NET中强引用和弱引用是什么

    本文首发公众号洪流学堂.洪流学堂,让你快人几步. 今天分享一个网易游戏的面试题: 题目 请简述强引用和弱引用. 参考答案 我们平常用的都是对象的强引用,如果有强引用存在,GC是不会回收对象的.我们能不 ...

  7. 【WPF】MVVM是如何解耦的

    前言 因为本身对wpf理解不深如果有技术方面的问题希望可以帮忙纠正,谢谢. 1.MVVM是什么 从百度百科(MVVM_百度百科)可以了解它出现的原因以及优点.它的其中一个优点就是低耦合,这篇文章也是想 ...

  8. WPF Binding

    Binding的亮点 在WPF中,Binding无处不在,关于Binding的漂亮用法有很多,其主要的设计亮点有二: Weak Event模式 Converter 监听B的属性变化,A需要注册B的Pr ...

  9. 针对C++和Delphi的LiveBindings一瞥

    绑定表达式(Binding expression)并不是新概念,XAML和Flex开发者主要就依靠这个.但除C++/CX(只用于WinRT编程)之外,原生编程语言中通常见不到这种概念.不过为VCL和F ...

最新文章

  1. Powershell script for config_Win10
  2. [Web安全之实战] 跨站脚本攻击XSS
  3. sklearn查看版本 windows_解密windows系统版本和版本号,深入了解一组简单数字背后的故事...
  4. 完全平方数 HYSBZ - 2440 (莫比乌斯函数容斥)
  5. 对C# 程序员来说现在是到目前为止最好的时代
  6. 液体火箭发动机技术国家级重点实验室2021年度对外开放项目指南
  7. AI专家告诉你,机器学习与深度学习如何快速进阶?
  8. mac系统maven spring mvc小试牛刀
  9. 韩梦飞沙Android应用集合 想法
  10. 让你的CSS更尽完美的技巧
  11. java识别手写文字_Java 实现OCR 识别图像文字(手写中文)----tess4j
  12. C#生成Code39条形码【非条形码字体】
  13. 程序人生 - 汽车后视镜锁车自动折叠为啥失灵?
  14. 阿里、美团、Oracle等大厂的Java虚拟机面试题集锦
  15. 无人值守自动称重系统的组成和结构
  16. 庸殖状恐剐雷善菊囟蕾
  17. python爬虫用urllib还是reques_Python爬虫之urllib.request库
  18. java - day13 - UnionPay
  19. 【转】 http请求包含什么
  20. mysql好友关系数据表设计_社交系统中用户好友关系数据库设计

热门文章

  1. 收藏100个网络基础知识
  2. MySQL索引和SQL调优手册
  3. 成为优秀程序员应该具备的8个特质
  4. C# 操作IIS服务器Demo
  5. 做人:失信是最大的破产!
  6. 仿盛大服务器列表不显示,最新高仿100%仿盛大传奇私服--传奇SF无法获得列表解决方法大全...
  7. 外国经典儿童读物合集pdf_帮助父母在线购买儿童读物–用户体验案例研究
  8. 前端工程师的一大神器——puppeteer
  9. 代码自解释不是不写注释的理由
  10. Javascript:原型模式类继承