你應該如何處置BitmapSource?處理BitmapSource的正確方法
// this wont work because BitmapSource doesnt implement IDisposable
using(BitmapSource bitmap = new BitmapImage(new Uri("myimage.png")))
{
}
你應該如何處置BitmapSource?處理BitmapSource的正確方法
// this wont work because BitmapSource doesnt implement IDisposable
using(BitmapSource bitmap = new BitmapImage(new Uri("myimage.png")))
{
}
您不必Dispose()a BitmapSource。與框架中的一些其他「圖像」類不同,它不包裝任何本地資源。
只要讓它超出範圍,垃圾收集器就會釋放它的內存。
好的。我的同事提到WPF完全加速並且圖像等存儲在視頻中。這只是一個幻想嗎?我是一個很長時間的winforms程序員,現在正在WPF中編寫一個新模塊,所以我認爲我需要處理圖像。 –
BitmapSource不是圖像 - 它用於生成一個。但是,它是一種託管像素存儲介質。有點令人困惑,但它總是值得檢查。一般來說,只要看看類層次結構 - 如果它沒有實現IDisposable,那麼你可以自由地讓GC擔心而不是你。 :) –
除外,如果它是一個WritableBitmap。 –
[相關](https://stackoverflow.com/questions/8352787/how-to-free-the-memory-after-the-bitmapimage-is-no-longer-needed) – Goufalite