개발/DX11

[DX11] Release 함수

by Majangnan 2024. 5. 8.

Release()

 

동적 할당한 DX 객체를 메모리 해제 시킬 때 사용하는 함수. 

 

동적할당한 DX 객체는 C++의 delete 함수를 사용하면 안되고 DX의 Release() 함수를 통하여 메모리 해제 시켜주어야 한다.  

 

Release 동작

 

 

DX 객체를 보면 IUnknown을 상속받은 것을 확인할 수 있는데, 

 

 

IUnknown을 보면 멤버로 Refernce Count 값을 가지고 있는 것을 알 수 있다. 처음에 객체를 생성하면 Count 값이 1인 상태로 생성을 하게 되고, 프로그램 종료시 Release() 함수를 호출해주면 그 때 Count 값이 0으로 감소하면서, 0일 때 내부에서 스스로 삭제하게 된다. 

 

즉, Release() 함수를 호출하면 바로 삭제되는 것이 아니고 참조 카운트를 감소시키고 내부에서 스스로 삭제하게 되는 것이다.

 

 

'개발 > DX11' 카테고리의 다른 글

[DX3D] 반사광  (0) 2024.10.10
[DX3D] 반사 벡터  (0) 2024.10.10
[DX3D] Cube Mesh  (0) 2024.10.07
[DX11] 렌더링 파이프라인  (0) 2024.05.09
[DX11] Device 초기화 및 렌더링  (2) 2024.05.06

댓글