ФЭНДОМ


curl_global_init_mem - глобальная инициализация libcurl с установкой обратных вызовов для работы с памятью.

Синтаксис Править

#include <curl/curl.h>
 
CURLcode curl_global_init_mem(long flags,
                              curl_malloc_callback m,
                              curl_free_callback f,
                              curl_realloc_callback r,
                              curl_strdup_callback s,
                              curl_calloc_callback c );

Описание Править

Работает в точности так же, как и curl_global_init(), но с одним небольшим дополнением: позволяет приложению заменить функции управления памятью, используемые внутри библиотеки, на свои.

Эта страница документации описывает только функции обратного вызова, всё остальное идентично curl_global_init(). При использовании этой функции, все аргументы с обратным вызовом должны быть заполнены корректными указателями.

Прототипы используемых функций обратного вызова должны быть следующими:

void *malloc_callback ( size_t size );
Замена для malloc().
void free_callback ( void *ptr );
Замена для free().
void *realloc_callback ( void *ptr, size_t size );
Замена для realloc().
char *strdup_callback( const char *str );
Замена для strdup().
void *calloc_callback( size_t nmemb, size_t size );
Замена для calloc().

ПредостережениеПравить

Управление этими функциями дает возможность серьезно испортить данные в libcurl. Будте осторожны!

См. также Править