ConditionalWeakTable 썸네일형 리스트형 C# 메모리 누수 방지를 위한 약한 참조(WeakReference) 사용 관리되는 환경에서도 긴 수명의 참조(캐시, static 필드, 이벤트 구독 등)가 객체 수명을 불필요하게 연장하면 메모리 누수가 발생합니다. 이 글에서는 약한 참조(WeakReference)를 활용해 GC가 객체를 수거할 수 있도록 허용하면서, 필요할 때만 강한 참조를 복원하는 실용 패턴을 정리합니다.1. WeakReference란?WeakReference는 대상 객체를 참조하되 GC가 수거하는 것을 막지 않는 참조입니다. 코드가 대상에 대한 강한 참조를 유지하지 않는다면, GC는 메모리 압박 시 해당 객체를 언제든지 회수할 수 있습니다. C#에서는 제네릭 버전인 WeakReference 사용을 권장합니다.2. 기본 사용법WeakReference는 대상이 아직 살아 있으면 TryGetTarget으로 강한.. 더보기 이전 1 다음