본문 바로가기

Language/Common

Unmanaged / Managed Pointer, Heap

Unmanaged Pointer


Unmanaged Heap(GC가 수행되지 않는, non .NET heap)에 할당되는 

항시 일정한 선형 주소값을 가지는 Pointer, 기존 C++에 존재하던 Pointer들이 이에 해당된다.



Managed Pointer


C++ / CLI에 새로 추가된 개념, GC가 수행되는 .NET heap에 할당되는 비일정 선형 주소값을 가지는 Pointer





Unmanaged Heap


Data를 할당하기 위해서 new 연산자 사용하며 이는 unmanaged pointer를 반환
delete 연산자를 이용하여 명시적으로 memory를 할당 해제해야함


Managed Heap


Data를 할당하기 위해서 gcnew 연산자를 사용하며 이는 managed pointer를 반환

managed heap에 존재하는 data는 명시적으로 할당 해제 불가, GC작동시에만 간접적으로 할당 해제가된다.






참고

https://m.blog.naver.com/PostView.nhn?blogId=gibumi0727&logNo=110093162373&proxyReferer=https%3A%2F%2Fwww.google.com%2F

'Language > Common' 카테고리의 다른 글

Coroutine  (0) 2019.03.06
COM / DCOM / COM+ / IPC  (0) 2019.03.05