X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=docs%2Fmemcached_memory_allocators.rst;h=33f3d3a72596ae6b6fa045af7594aae3ea4fb135;hb=a6c3e3a3d04f379b1480c8c88a8eae17e54b1449;hp=5de7fb67db8336c27d9c86e8a9074344ae930572;hpb=1edb76c1dfdf6307d010307b6f04bed3ce22e3a2;p=awesomized%2Flibmemcached diff --git a/docs/memcached_memory_allocators.rst b/docs/memcached_memory_allocators.rst index 5de7fb67..33f3d3a7 100644 --- a/docs/memcached_memory_allocators.rst +++ b/docs/memcached_memory_allocators.rst @@ -1,77 +1,43 @@ -.. highlight:: perl +======================================== +Use custom allocators for embedded usage +======================================== +.. index:: object: memcached_st -memcached_set_memory_allocators, memcached_get_memory_allocators, memcached_set_memory_allocators_context -********************************************************************************************************* +Manage memory allocator functions +-------- +SYNOPSIS +-------- -Manage memory allocator functions +#include -******* -LIBRARY -******* +.. c:function:: memcached_return_t memcached_set_memory_allocators (memcached_st *ptr, memcached_malloc_fn mem_malloc, memcached_free_fn mem_free, memcached_realloc_fn mem_realloc, memcached_calloc_fn mem_calloc, void *context); +.. c:function:: void memcached_get_memory_allocators (memcached_st *ptr, memcached_malloc_fn *mem_malloc, memcached_free_fn *mem_free, memcached_realloc_fn *mem_realloc, memcached_calloc_fn *mem_calloc); -C Client Library for memcached (libmemcached, -lmemcached) +.. c:function:: void * memcached_get_memory_allocators_context(const memcached_st *ptr); +.. c:function:: void * (*memcached_malloc_fn) (memcached_st *ptr, const size_t size, void *context); -******** -SYNOPSIS -******** - - - -.. code-block:: perl - - #include - - memcached_return_t - memcached_set_memory_allocators (memcached_st *ptr, - memcached_malloc_fn mem_malloc, - memcached_free_fn mem_free, - memcached_realloc_fn mem_realloc, - memcached_calloc_fn mem_calloc, - void *context); - - void - memcached_get_memory_allocators (memcached_st *ptr, - memcached_malloc_fn *mem_malloc, - memcached_free_fn *mem_free, - memcached_realloc_fn *mem_realloc, - memcached_calloc_fn *mem_calloc); - - void * - memcached_get_memory_allocators_context(const memcached_st *ptr); - - void * - (*memcached_malloc_fn) (memcached_st *ptr, const size_t size, - void *context); - - void * - (*memcached_realloc_fn) (memcached_st *ptr, void *mem, - const size_t size, - void *context); - - void - (*memcached_free_fn) (memcached_st *ptr, void *mem, - void *context); - - void * - (*memcached_calloc_fn) (memcached_st *ptr, - size_t nelem, - const size_t elsize, - void *context); - - - -*********** +.. c:function:: void * (*memcached_realloc_fn) (memcached_st *ptr, void *mem, const size_t size, void *context); + +.. c:function:: void (*memcached_free_fn) (memcached_st *ptr, void *mem, void *context); + +.. c:function:: void * (*memcached_calloc_fn) (memcached_st *ptr, size_t nelem, const size_t elsize, void *context); + +Compile and link with -lmemcached + + + +----------- DESCRIPTION -*********** +----------- -libmemcached(3) allows you to specify your own memory allocators optimized -for your application. +libmemcached(3) allows you to specify your own memory allocators, optimized +for your application. This enables libmemcached to be used inside of applications that have their own malloc implementation. memcached_set_memory_allocators() is used to set the memory allocators used by the memcached instance specified by ptr. Please note that you cannot @@ -91,9 +57,9 @@ memcached structure, the is passed as const and you will need to clone it in order to make use of any operation which would modify it. -***** +----- NOTES -***** +----- In version 0.38 all functions were modified to have a context void pointer @@ -101,37 +67,26 @@ passed to them. This was so that customer allocators could have their own space for memory. -****** +------ RETURN -****** +------ memcached_set_memory_allocators() return MEMCACHED_SUCCESS upon success, and MEMCACHED_FAILURE if you don't pass a complete set of function pointers. -**** +---- HOME -**** +---- To find out more information please check: -`https://launchpad.net/libmemcached `_ - - -****** -AUTHOR -****** +`http://libmemcached.org/ `_ -Trond Norbye, -Brian Aker, - - -******** +-------- SEE ALSO -******** - - -memcached(1) libmemcached(3) memcached_get_user_data(3) memcached_set_user_data(3) +-------- +:manpage:`memcached(1)` :manpage:`libmemcached(3)` :manpage:`memcached_strerror(3)`