item 18, 표준 Dispose 패턴을 구현하라.
포스트를 만든 목적 이렇게 하지 않으면, 책을 건성으로 본다. 내용 Dispose 는 무엇인가? 관리되지 않는(unmanaged) 자원을 해제하기 위해서 사용 하는 함수이다. 그러면 unmanaged 자원은 무엇인가? 쉽게 생각해서 "메모리가 아닌 자원" 즉, 윈도우 핸들, 파일 핸들, 소켓 핸들 등 시스템 자원을 뜻한다. 반대로 managed 는.. new List() 등, 메모리 처럼 쓰는 자원들이다.그러면 표준 Dispose 패턴은 무엇인가? Dispose를 IDisposable Interface로 구현한다. Dispose 내부에선 unmanaged 자원을 해제한다. 사용자가 Dispose를 사용하지 않았을 경우를 대비하여, finalizer를 구현한다. finalizer 에서 unmanaged 자..
책 정리/Effective C#
2010. 7. 6. 01:48
최근댓글