2009-10-20 4 views
8

어떻게 BitmapSource를 처분해야합니까?BitmapSource를 적절히 처분하는 방법

// this wont work because BitmapSource doesnt implement IDisposable 
using(BitmapSource bitmap = new BitmapImage(new Uri("myimage.png"))) 
{ 
} 
+0

[관련 항목] [관련 항목] https://stackoverflow.com/questions/8352787/how-to-free-the-memory-after-the-bitmapimage-is-no-longer-needed – Goufalite

답변

11

BitmapSource을 삭제할 필요는 없습니다. 프레임 워크의 다른 "이미지"클래스와 달리 네이티브 리소스를 래핑하지 않습니다.

범위를 벗어나면 가비지 수집기가 메모리를 확보합니다.

+0

ok. 제 동료는 WPF가 완전히 가속화되었으며 이미지 등이 비디오에 저장된다고 언급했습니다. 이건 그냥 환상일까요? 저는 오랫동안 winforms 프로그래머 였고 이제는 WPF에 새로운 모듈을 작성하여 이미지를 처리해야한다고 생각했습니다. –

+1

BitmapSource는 이미지가 아닙니다. 이미지를 생성하는 데 사용됩니다. 그러나 관리되는 픽셀 저장 매체입니다. 종류가 혼동 스럽지만 항상 점검 할 가치가 있습니다. 일반적으로 클래스 계층 구조를 살펴 보겠습니다. IDisposable을 구현하지 않으면 GC 대신 자유롭게 걱정할 수 있습니다. :) –

+0

WritableBitmap 인 경우를 제외하고는 예외입니다. –

관련 문제