<aside> 🧑‍💻 강의의 주요적인 목표

언리얼 엔진의 메모리 관리방식을 파악하고 언리얼 오브젝트의 메모리를 관리해보자.

언리얼 엔진의 메모리 관리 시스템의 이해

안정적으로 언리얼 오브젝트 포인터를 관리하는 방법을 배워본다.

</aside>


언리얼 엔진의 자동 메모리 관리? GC 같은 것일까?

<aside> 🧑‍💻 C++ 메모리 관리의 문제점 (솔직히 이거는 어우.. 할말 하않..)

그래서.

Java랑 C#은 이런 문제를 고치기 위해서 포인터를 버리고 가비지 컬렉션을 도입.

</aside>


GC (가비지 컬렉션)

Untitled

요런 형태인데,

엄밀히 말하면 술래잡기를 하듯이 터치터치 하다가 터치 안된 것들을 날려버리는 것임.

그래서 Mark and Sweep (근데 이거 운영체제 시간에서, 캐시에서 본 듯해 보이는데 비슷해보여.)


언리얼의 경우

마크-스윕의 방식으로 GC를 구축한다.

지정된 주기마다 몰아서 없애는 방식으로 동작 (GCCycle = 60초)

어찌되었던 GC도 프로그램 일종이라서 동작부하가 좀 있음.

그래서 성능 향상을 위해서 병렬처리 클러스터링 같은 기능을 탑재한다.

Untitled