在应用程序中,我创建了一个FixedDocument作为打印预览。每当用户通过创建新的FixedDocument并替换文档查看器使用的旧and来更改某些数据时,就会刷新此预览。
问题是: FixedDocument包含大量的资源,其中一些是图像类型的资源,这些资源是从资源的ImageSources创建的。
程序正在消耗内存,并且很快就会用完GDI句柄。
我的问题是:如何处理FixedDocument,以便正确处理所有内容?
发布于 2011-06-16 07:00:53
这里有一个有同样问题的人:http://social.msdn.microsoft.com/Forums/en/wpf/thread/f5216805-5730-4be2-82fa-8a7e7757dd19
也许这会有帮助?
找到另一篇有趣的文章:http://blogs.msdn.com/b/jgoldb/archive/2008/02/04/finding-memory-leaks-in-wpf-based-applications.aspx
我使用
GC.Collect();
GC.WaitForPendingFinalizers();
GC.Collect();在DocumentViewer上附加新的FixedDocument之后的模式。因此,对我来说,内存使用情况并不是很糟糕。但这是一个丑陋的变通方法。
看看这篇文章的“位图”部分,也许它适用于你?
https://stackoverflow.com/questions/5883779
复制相似问题