CGlobalHeap 클래스
이 클래스는 Win32 전역 힙 함수를 사용하여 IAtlMemMgr 을 구현합니다.
Important
이 클래스와 해당 멤버는 Windows 런타임에서 실행되는 애플리케이션에서 사용할 수 없습니다.
구문
class CGlobalHeap : public IAtlMemMgr
멤버
공용 메서드
이름 | 설명 |
---|---|
CGlobalHeap::Allocate | 메모리 블록을 할당하려면 이 메서드를 호출합니다. |
CGlobalHeap::Free | 이 메서드를 호출하여 이 메모리 관리자가 할당한 메모리 블록을 해제합니다. |
CGlobalHeap::GetSize | 이 메서드를 호출하여 이 메모리 관리자가 할당한 메모리 블록의 할당된 크기를 가져옵니다. |
CGlobalHeap::Reallocate | 이 메모리 관리자에 의해 할당된 메모리를 다시 할당하려면 이 메서드를 호출합니다. |
설명
CGlobalHeap
는 Win32 전역 힙 함수를 사용하여 메모리 할당 함수를 구현합니다.
참고 항목
전역 힙 함수는 다른 메모리 관리 함수보다 느리며 많은 기능을 제공하지 않습니다. 따라서 새 애플리케이션은 힙 함수를 사용해야 합니다. CWin32Heap 클래스에서 사용할 수 있습니다. 전역 함수는 DDE 및 클립보드 함수에서 계속 사용됩니다.
예시
IAtlMemMgr에 대한 예제를 참조하세요.
상속 계층 구조
IAtlMemMgr
CGlobalHeap
요구 사항
헤더: atlmem.h
CGlobalHeap::Allocate
메모리 블록을 할당하려면 이 메서드를 호출합니다.
virtual __declspec(allocator) void* Allocate(size_t nBytes) throw();
매개 변수
nBytes
새 메모리 블록의 요청된 바이트 수입니다.
Return Value
새로 할당된 메모리 블록의 시작 부분에 대한 포인터를 반환합니다.
설명
CGlobalHeap::Free 또는 CGlobalHeap::Reallocate를 호출하여 이 메서드에서 할당한 메모리를 해제합니다.
GMEM_FIXED 플래그 매개 변수와 함께 GlobalAlloc를 사용하여 구현됩니다.
CGlobalHeap::Free
이 메서드를 호출하여 이 메모리 관리자가 할당한 메모리 블록을 해제합니다.
virtual void Free(void* p) throw();
매개 변수
p
이 메모리 관리자에 의해 이전에 할당된 메모리에 대한 포인터입니다. NULL은 유효한 값이며 아무 작업도 수행하지 않습니다.
설명
GlobalFree를 사용하여 구현됩니다.
CGlobalHeap::GetSize
이 메서드를 호출하여 이 메모리 관리자가 할당한 메모리 블록의 할당된 크기를 가져옵니다.
virtual size_t GetSize(void* p) throw();
매개 변수
p
이 메모리 관리자에 의해 이전에 할당된 메모리에 대한 포인터입니다.
Return Value
할당된 메모리 블록의 크기를 바이트 단위로 반환합니다.
설명
GlobalSize를 사용하여 구현됩니다.
CGlobalHeap::Reallocate
이 메모리 관리자에 의해 할당된 메모리를 다시 할당하려면 이 메서드를 호출합니다.
virtual __declspec(allocator) void* Reallocate(void* p, size_t nBytes) throw();
매개 변수
p
이 메모리 관리자에 의해 이전에 할당된 메모리에 대한 포인터입니다.
nBytes
새 메모리 블록의 요청된 바이트 수입니다.
Return Value
새로 할당된 메모리 블록의 시작 부분에 대한 포인터를 반환합니다.
설명
CGlobalHeap::Free를 호출하여 이 메서드에서 할당한 메모리를 해제합니다.
GlobalReAlloc를 사용하여 구현됩니다.
참고 항목
클래스 개요
CComHeap 클래스
CWin32Heap 클래스
CLocalHeap 클래스
CCRTHeap 클래스
IAtlMemMgr 클래스