我想尽我创建RenderTargetBitmap一个实例来呈现图像的存储时间增加渲染图像与RenderTargetBitmap 和我做当记忆从未发布 ,这是代码:RenderTargetBitmap内存泄漏
RenderTargetBitmap rtb = new RenderTargetBitmap((int)(renderWidth * dpiX/96.0),
(int)(renderHeight * dpiY/96.0),
dpiX,
dpiY,
PixelFormats.Pbgra32);
DrawingVisual dv = new DrawingVisual();
using (DrawingContext ctx = dv.RenderOpen())
{
VisualBrush vb = new VisualBrush(target);
ctx.DrawRectangle(vb, null, new System.Windows.Rect(new Point(0, 0), new Point(bounds.Width, bounds.Height)));
}
rtb.Render(dv);
请我需要帮助 我如何释放内存 并感谢所有人。
感谢你,但这是错误的 我试图GC.Collect的(),并等待释放内存,但它从来没有发布 –
穆罕默德,是它可能你在非UI线程上执行此操作?如果是这样,这可能是相关的:https://connect.microsoft.com/VisualStudio/feedback/details/648683/memory-leak-in-wpf-of-dispatcher-and-mediacontext-objects-resulting-in-win32exceptions – JacobJ