Поделиться через


_CrtSetDumpClient

Устанавливает определенную приложением функцию, чтобы сбросить в дамп блоки памяти типа _CLIENT_BLOCK (только для отладочной версии).

_CRT_DUMP_CLIENT _CrtSetDumpClient(  
   _CRT_DUMP_CLIENT dumpClient  
);

Параметры

  • dumpClient
    Новая, определенная клиентом функция дампа для внедрения в процесс дампа отладочной памяти среды выполнения C.

Возвращаемое значение

Возвращает ранее определенную функцию дампа блока клиента.

Заметки

Функция _CrtSetDumpClient позволяет приложению перехватить собственную функцию дампа объектов, хранящихся в виде блоков памяти _CLIENT_BLOCK в процессе дампа отладочной памяти среды выполнения C. В результате, каждый раз, когда функция отладочного дампа, например, _CrtMemDumpAllObjectsSince или _CrtDumpMemoryLeaks сбрасывает блок памяти _CLIENT_BLOCK, также вызывается функция дампа приложения. _CrtSetDumpClient предоставляет приложение с простым методом для обнаружения утечек памяти и проверки или информировании о содержимом данных, хранящихся в блоках _CLIENT_BLOCK. Если _DEBUG не определен, то вызовы _CrtSetDumpClient удаляются во время предварительной обработки.

Функция _CrtSetDumpClient устанавливает новую, определенную приложением функцию дампа, указанную в dumpClient, и возвращает ранее определенную функцию дампа. Пример функции дампа клиентского блока выглядит следующим образом:

void DumpClientFunction( void *userPortion, size_t blockSize );

Аргумент userPortion является указателем на начало части пользовательских данных блоков памяти, а blockSize определяет размер выделенных блоков памяти в байтах. Функция дампа клиентского блока должна возвращать void. Указатель на функцию дампа клиентского блока, который передается _CrtSetDumpClient, имеет тип _CRT_DUMP_CLIENT, как определено в Crtdbg.h:

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

Дополнительные сведения о функциях, работающих с блоками памяти типа _CLIENT_BLOCK, см. раздел Функции-ловушки клиентского блока. Функцию _CrtReportBlockType можно использовать для получения сведений о типах и подтипах блоков.

Требования

Подпрограмма

Обязательный заголовок

_CrtSetDumpClient

<crtdbg.h>

Дополнительные сведения о совместимости см. в разделе Совместимость во введении.

Библиотеки

Только отладочные версии Библиотеки времени выполнения языка C.

Эквивалент в .NET Framework

Неприменимо. Для вызова стандартной функции C используйте PInvoke. Дополнительные сведения см. в разделе Примеры вызовов неуправляемого кода.

См. также

Ссылки

Процедуры отладки

_CrtReportBlockType

_CrtGetDumpClient