가비지 컬렉터(gabage collector), C/C++에서의 메모리 관리

CODEDRAGON Development/C#, Xamarin

반응형


 

가비지 컬렉터(gabage collector)

·       C# 프로그래머들은 프로그래머들이 겪고 있는 메모리 관리 문제로부터 완전히 자유롭습니다.

·       자동 메모리 관리(Automatic Memory Management) 기능을 제공하기 때문입니다.

·       자동 메모리 관리 기능의 중심에는 가비지 컬렉션(Garbage Collection) 있습니다.

·       가비지(Garbage) 우리 말로 쓰레기란 뜻인데, 여기에서 쓰레기는 이상 사용하지 않는 객체를 의미합니다.

·       가비지 컬렉션은 가비지 컬렉터(Garbage Collector) 담당합니다.

·       가비지 컬렉션은 사용이 종료된 객체가 사용하고 있던 메모리를 자동으로 해제하는 기법입니다.

 

 

 

C/C++에서의 메모리 관리

·       C/C++에서의 메모리 관리는 전적으로 프로그래머에게 달려 있습니다.

·       객체를 할당한 후에는 힙을 가리키는 포인터를 유지하고 있다가 객체를 사용한 후에는 해당 포인터가 가리키고 있는 메모리를 해제해줘야 합니다.

·       실수로 메모리 해제 코드를 누락한다면 프로그램에는 메모리 누수(Memory leak) 생기고, 해제하지 말아야 객체를 해제시키는 코드를 넣어놓는다면 프로그램이 예측할 없는 동작을 있습니다.