_CrtSetDumpClient

Menginstal fungsi yang ditentukan aplikasi untuk mencadangkan _CLIENT_BLOCK blok memori jenis (hanya versi debug).

Sintaks

_CRT_DUMP_CLIENT _CrtSetDumpClient( _CRT_DUMP_CLIENT dumpClient );

Parameter

dumpClient
Fungsi cadangan memori baru yang ditentukan klien untuk dikaitkan.

Nilai hasil

Mengembalikan fungsi pembuangan blok klien yang ditentukan sebelumnya.

Keterangan

Fungsi ini _CrtSetDumpClient memungkinkan aplikasi untuk menghubungkan fungsinya sendiri untuk mencadangkan objek yang disimpan dalam _CLIENT_BLOCK blok memori. Akibatnya, setiap kali fungsi dump debug seperti _CrtMemDumpAllObjectsSince atau _CrtDumpMemoryLeaks mencadangkan _CLIENT_BLOCK blok memori, fungsi cadangan aplikasi juga dipanggil. _CrtSetDumpClient menyediakan aplikasi dengan metode mudah untuk mendeteksi kebocoran memori dan memvalidasi atau melaporkan konten data yang disimpan dalam _CLIENT_BLOCK blok. Jika _DEBUG tidak ditentukan, panggilan ke _CrtSetDumpClient akan dihapus selama praproscesing.

Fungsi ini _CrtSetDumpClient menginstal fungsi cadangan baru yang ditentukan aplikasi yang ditentukan dan dumpClient mengembalikan fungsi cadangan yang ditentukan sebelumnya. Contoh fungsi pembuangan blok klien adalah sebagai berikut:

void DumpClientFunction( void *userPortion, size_t blockSize );

Argumen userPortion adalah penunjuk ke awal bagian data pengguna dari blok memori dan blockSize menentukan ukuran blok memori yang dialokasikan dalam byte. Fungsi pembuangan blok klien harus mengembalikan void. Penunjuk ke fungsi cadangan klien yang diteruskan ke _CrtSetDumpClient berjenis _CRT_DUMP_CLIENT, seperti yang didefinisikan dalam Crtdbg.h:

typedef void (__cdecl *_CRT_DUMP_CLIENT)( void *, size_t );

Untuk informasi selengkapnya tentang fungsi yang beroperasi pada _CLIENT_BLOCK blok memori jenis, lihat Fungsi hook blok klien. Fungsi _CrtReportBlockType ini dapat digunakan untuk mengembalikan informasi tentang jenis blok dan subjenis.

Persyaratan

Rutin Header yang diperlukan
_CrtSetDumpClient <crtdbg.h>

Untuk informasi kompatibilitas selengkapnya, lihat Kompatibilitas.

Pustaka

Debug versi pustaka run-time C saja.

Baca juga

Rutinitas debug
_CrtReportBlockType
_CrtGetDumpClient