-4
블록을 사용하면 "렌더링 된"이미지는 "b"를 어떻게 처리합니까?외부 변수에서 블록을 사용하는 범위
Bitmap rendered;
using(Bitmap b = new Bitmap(calcHeight, calcWidth))
{
using (Graphics g = Graphics.FromImage(b))
{
RenderMyBitMap(ref b);
rendered = b;
}
}
//Outside Using block
DoSomeThingElseWith(rendered);
왜 직접 시도해 보지 않으시겠습니까? –
'b'에 대한 참조가 있기 때문에 차고를 수집하지 않습니다. 'rendered'가 null로 설정되면 차고 수집의 다음주기가 사라집니다. –
나는 어떤 오류도 보지 못했다. 메모리를 가득 채우고 있거나 (OOM 예외가 발생하기를 기다리고있는 경우) 찾지 못했거나 안전합니다. 까만 개구리 응답은 정당화되는 것을 보인다. 그러나 그것을 확인할 수 없습니다. –