728x90 가비지컬렉터2 [C#] 가비지컬렉터(GC, 가비지 수집기) GC(가비지 수집기, 가비지 컬렉터)는 자동 메모리 관리자 역할이다. 즉, 애플리케이션의 메모리 할당 및 해제를 관리한다. 그래서 C#에서는 가비지 수집기 때문에 개발자가 직접 메모리 관리 작업을 수행하기 위한 코드를 작성할 필요가 없다. 가비지 수집기로 인해 개체 해제를 잊어버리고 메모리 누수를 발생시키거나 이미 해제된 개체에 대해 엑세스하는 것과 같은 문제를 제거할 수 있다. 가비지 컬렉터의 역할 및 이점 1. 가비지 컬렉터로 인해 개발자가 수동으로 메모리를 해제할 필요가 없다. 2. 관리되는 힙에 효율적으로 개체를 할당해준다. 3. 더 이상 참조되지 않는(사용되지 않는) 개체를 회수하고 이러한 개체의 메모리를 비워 이후 할당에서 이 메모리를 사용할 수 있도록 한다. 4. 개체가 다른 개체에 할당.. 2023. 11. 13. [C#] string(문자열)과 StringBuilder string string은 값이 텍스트인 자료형이다. string의 내부는 char 개체가 순차적으로 저장된 형태이다. 즉 char의 배열로 이루어져 있다. C언어에서는 문자열이 null문자로 끝나는 문자 배열이다. 즉 Hello를 저장하면 'H' 'e' 'l' 'l' 'o' '\0'로 저장된다. 하지만 C#에서는 문자열이 null 문자로 끝나지 않는다. C#의 문자열은 자동으로 메모리 관리를 처리하며 null 문자에 대한 직접적인 관리를 하지 않아도 된다. 그래서 문자열의 길이를 알고 싶을 땐 Length 속성을 통해 확인할 수 있다. string의 불변성 C#에서는 string이 매우 중요하다. 그 이유는? string이 가비지 컬렉터에 부담이 되기 때문이다. 왤까? 바로 string의 불변성.. 2023. 11. 13. 이전 1 다음 반응형