Bagikan melalui


Kelas CLocalHeap

Kelas ini mengimplementasikan IAtlMemMgr menggunakan fungsi timbunan lokal Win32.

Penting

Kelas ini dan anggotanya tidak dapat digunakan dalam aplikasi yang dijalankan di Windows Runtime.

Sintaks

class CLocalHeap : public IAtlMemMgr

Anggota

Metode Publik

Nama Deskripsi
CLocalHeap::Alokasikan Panggil metode ini untuk mengalokasikan blok memori.
CLocalHeap::Free Panggil metode ini untuk membebaskan blok memori yang dialokasikan oleh manajer memori ini.
CLocalHeap::GetSize Panggil metode ini untuk mendapatkan ukuran blok memori yang dialokasikan oleh manajer memori ini.
CLocalHeap::Reallocate Panggil metode ini untuk merealokasi memori yang dialokasikan oleh manajer memori ini.

Keterangan

CLocalHeap mengimplementasikan fungsi alokasi memori menggunakan fungsi timbunan lokal Win32.

Catatan

Fungsi timbunan lokal lebih lambat daripada fungsi manajemen memori lainnya dan tidak menyediakan fitur sebanyak mungkin. Oleh karena itu, aplikasi baru harus menggunakan fungsi timbunan. Ini tersedia di kelas CWin32Heap .

Contoh

Lihat contoh untuk IAtlMemMgr.

Hierarki Warisan

IAtlMemMgr

CLocalHeap

Persyaratan

Header: atlmem.h

CLocalHeap::Alokasikan

Panggil metode ini untuk mengalokasikan blok memori.

virtual __declspec(allocator) void* Allocate(size_t nBytes) throw();

Parameter

nByte
Jumlah byte yang diminta di blok memori baru.

Tampilkan Nilai

Mengembalikan penunjuk ke awal blok memori yang baru dialokasikan.

Keterangan

Panggil CLocalHeap::Free atau CLocalHeap::Reallocate untuk membebaskan memori yang dialokasikan oleh metode ini.

Diimplementasikan menggunakan LocalAlloc dengan parameter bendera LMEM_FIXED.

CLocalHeap::Free

Panggil metode ini untuk membebaskan blok memori yang dialokasikan oleh manajer memori ini.

virtual void Free(void* p) throw();

Parameter

p
Pointer ke memori yang sebelumnya dialokasikan oleh manajer memori ini. NULL adalah nilai yang valid dan tidak melakukan apa pun.

Keterangan

Diimplementasikan menggunakan LocalFree.

CLocalHeap::GetSize

Panggil metode ini untuk mendapatkan ukuran blok memori yang dialokasikan oleh manajer memori ini.

virtual size_t GetSize(void* p) throw();

Parameter

p
Pointer ke memori yang sebelumnya dialokasikan oleh manajer memori ini.

Tampilkan Nilai

Mengembalikan ukuran blok memori yang dialokasikan dalam byte.

Keterangan

Diimplementasikan menggunakan LocalSize.

CLocalHeap::Reallocate

Panggil metode ini untuk merealokasi memori yang dialokasikan oleh manajer memori ini.

virtual __declspec(allocator) void* Reallocate(void* p, size_t nBytes) throw();

Parameter

p
Pointer ke memori yang sebelumnya dialokasikan oleh manajer memori ini.

nByte
Jumlah byte yang diminta di blok memori baru.

Tampilkan Nilai

Mengembalikan penunjuk ke awal blok memori yang baru dialokasikan.

Keterangan

Panggil CLocalHeap::Free untuk membebaskan memori yang dialokasikan oleh metode ini.

Diimplementasikan menggunakan LocalReAlloc.

Lihat juga

Gambaran Umum Kelas
Kelas CComHeap
Kelas CWin32Heap
Kelas CGlobalHeap
Kelas CCRTHeap
Kelas IAtlMemMgr