写点什么

微软发布 3 个 WPF 内存泄漏补丁

  • 2010-06-18
  • 本文字数:535 字

    阅读完需:约 2 分钟

Windows Presentation Foundation 的内存泄漏问题可谓是家喻户晓。比如说,WPF 严重倚赖于弱引用来实现数据绑定技术。就像并发多线程一样,弱引用看似简单,但其实却很难用好。哪怕及时释放掉了实际的对象,但 WPF 的弱引用数组还是会继续持有引用,这就导致了内存泄漏。

在使用大量短暂生命周期的元素时这一点尤为明显。 KB981107 从 3 个地方来解决该问题。首先,如果引用了资源的控件从未使用过该资源的话,那么 WPF 就会导致应用级的样式与模板内存泄漏问题。 Jossef Goldberg 解释到

比如说:应用资源定义了 <sys:Double x:Key="{x:Static SystemParameters.HorizontalScrollBarHeightKey}">20</sys:Double>,这行语句所创建的资源可为任何控件所用,它会显示一个水平滚动条。如果创建了大量控件,但这些控件实际上又没有显示出滚动条则会导致内存泄漏。

该补丁还会解决大量短暂生命周期元素的属性绑定到了长期存活的对象上的情况。在短周期对象销毁后,长周期对象对短周期对象的弱引用依然会长久保留下来。

遗憾的是,KB981107 补丁还无法用于.NET 4.0,微软甚至还没有决定是否发布一个。另外两个补丁 KB967634 KB967328 则作为.NET 4.0 的一部分发布,因此.NET 4.0 的用户就无需下载这两个补丁了。

查看英文原文: Three Hotfixes for WPF Memory Leaks

2010-06-18 06:022060
用户头像

发布了 88 篇内容, 共 268.9 次阅读, 收获喜欢 8 次。

关注

评论

发布
暂无评论
发现更多内容

聚道云软件连接器助力精成MES与金蝶K3wise的无缝对接

聚道云软件连接器

案例分享

文心一言 VS 讯飞星火 VS chatgpt (168)-- 算法导论13.2 1题

福大大架构师每日一题

福大大架构师每日一题

聚道云软件连接器助力建筑企业实现资金系统与易快报的无缝对接

聚道云软件连接器

案例分享

探索AI世界,引领未来新趋势

黑白相间

AI大模型 AI热潮

边缘计算学习总结与趋势预测:个人成长与项目经验分享

Geek_39796e

物联网 边缘计算 技术分享 城市智能化 边缘计算平台

深入浅出分析云原生微服务的技术结构和架构设计

Tech技术攻关

架构 微服务 云原生 云原生微服务 云原生技术

航行在梦中的夜

少油少糖八分饱

人生 读后感 无限游戏 内心 最伟大的作品

2023 总结与 2024 展望

air

技术 总结

聚道云软件连接器助力宁波银行与金蝶产品高效对接

聚道云软件连接器

案例分享

DAPP算力矿机模式系统开发(源码搭建)

l8l259l3365

我的 2023 总结-意图框架学习

Jason199

HarmonyOS 坚果派

2023年12月 GitHub 关注度最高的前十名

晴空万里

GitHub github Contributing

聚道云助力企业数字化转型:金蝶云星空与旺店通无缝对接

聚道云软件连接器

案例分享

聚道云软件连接器助力哗啦啦与开联通预付卡无缝对接

聚道云软件连接器

案例分享

企业级数据平台云原生转型之路

易程

数据平台 云原生大数据平台 云原生大数据 云原生数据平台

微软发布3个WPF内存泄漏补丁_.NET_Jonathan Allen_InfoQ精选文章