mcheck()

Включить проверку согласованности выделенной памяти

Прототип:

#include <malloc.h>
int mcheck( void (*abort_fn)( enum mcheck_status status ) );

Аргументы:

abort_fn
Указатель на функцию, вызываемую при обнаружении несогласованностей в вызовах функций выделения памяти или NULL для использования функции по умолчанию. Аргумент функции abort_fn должно быть перечисление mcheck_status, описанное на странице mprobe(). По умолчанию abort_fn выводит сообщение в stderr и прерывает программу.

Библиотека:

libc

Описание:

Функция mcheck() включает проверки согласованности памяти для функций выделения памяти. При активации данных проверок происходит периодическая проверка согласованности при освобождении и новом выделении. При обнаружении несогласованностей вызывается abort с соответствующим статусом.


Note: Проверки согласованности выполняются для блоков, выделенных после вызова mcheck().

Уровень проверки зависит от библиотеки распределителя памяти, выбранного для программы:


Caution: Вызвать mcheck() в программе можно только один раз.

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

-1
Проверки уже активированы.
0
Проверки активированы успешно.

Классификация:

ЗОСРВ «Нейтрино»

Безопасность использования
Точка остановки потока
Нет
Обработчик прерываний
Нет
Обработчик сигналов
Нет
В потоке
Да

Тематические ссылки:

mallopt(), mprobe()




Предыдущий раздел: Описание API системной библиотеки