자동 가비지 수집을 피하는 방법


자동 가비지 수집을 피하는 방법

1. 값 타입과 참조 타입 차이점 이해하기 .NET에는 값 타입과 참조 타입 두 가지 데이터 타입이 있다. 이 두 타입의 차이점은 궁극적으로 데이터를 저장하는 방법에 있다. 값 타입의 인스턴스는 자체적으로 데이터를 보유하는 반면 참조 타입의 인스턴스는 데이터의 메모리 위치에 대한 참조를 보유한다. 값 타입은 null일 수 없으며 이를 포함하는 객체가 존재하는 한 존재한다. 따라서 값 타입은 최악의 경우 가비지 수집에 미치는 영향이 미미한다. 실제로 값 타입은 GC의 힙 내에 존재하지 않는 경우가 많다. 적절한 경우 값 타입을 사용하여 GC 할당을 방지하고 GC 수집 속도를 더 빠르게 만들 수 있다. 2. 클래스 대신 구조체 고려 타입, 특히 배열이나 일반 컬렉션에서 사용할 타입을 만들 때 구조체로 만드는..


원문링크 : 자동 가비지 수집을 피하는 방법