【发布时间】:2020-08-29 12:28:37
【问题描述】:
我了解了如何在 Windows Presentation Foundation 应用程序中通过仅绑定实现 INotifyPropertyChanged 或它们是 DependencyObject 对象的属性来避免内存泄漏。但这如何让 CLR 收集这些对象呢?
来源信息:
WPF 绑定实际上会导致内存泄漏。经验法则是始终绑定到 DependencyObject 或 INotifyPropertyChanged 对象。如果您不这样做,WPF 将从静态变量创建对绑定源(即 ViewModel)的强引用,从而导致内存泄漏 (https://michaelscodingspot.com/ways-to-cause-memory-leaks-in-dotnet/)
【问题讨论】:
-
尝试在 StackOverflow 中搜索
[wpf] INotifyPropertyChanged memory leaks -
我在 SO 上发现了一些关于此的帖子有死链接或不是非常有用的链接。有一个解释为什么你(可能)在这里泄漏:blog.jetbrains.com/dotnet/2014/09/04/…
标签: c# wpf memory-leaks