请考虑以下代码抛出异常'MILERR_WIN32ERROR':
while(true)
{
System.Windows.Media.Imaging.WriteableBitmap writableBitMap =
new System.Windows.Media.Imaging.WriteableBitmap(100, 200, 96, 96, System.Windows.Media.PixelFormats.Bgra32, null);
}
WriteableBitmap没有实现IDisposable,我不确定为什么会发生内存泄漏(我原来的代码要复杂得多,而且我跟踪了它)。
答案 0 :(得分:2)
内存泄漏问题源于BitmapSource的内存泄漏。谷歌搜索将找到更好的结果:))
This表示你应该在使用后将writableBitMap指定为'null'。我会说尝试使用Freeze()方法然后将其分配给null然后尝试。如果之后,如果您看到内存泄漏仍然存在,请将disable the caching option(CacheOption)设置为BitmapCacheOption.OnLoad。