diff options
author | Continuous Integration <ci@tangent.org> | 2014-02-16 03:31:37 -0800 |
---|---|---|
committer | Continuous Integration <ci@tangent.org> | 2014-02-16 03:31:37 -0800 |
commit | b163cbc1e82ea834b66e3b4c1e8070394ccb506d (patch) | |
tree | 999734df2e2c288d6726af31f9336beadb2a781a /docs/source/memcached_create.rst | |
parent | 8541a9863cffad457f4d583af6a6c3613250193d (diff) | |
parent | 37deb7fa75a0b3fbea4d58c032446213f0d5a02a (diff) | |
download | libmemcached-trunk.tar.gz |
Diffstat (limited to 'docs/source/memcached_create.rst')
-rw-r--r-- | docs/source/memcached_create.rst | 83 |
1 files changed, 83 insertions, 0 deletions
diff --git a/docs/source/memcached_create.rst b/docs/source/memcached_create.rst new file mode 100644 index 00000000..ae851ba9 --- /dev/null +++ b/docs/source/memcached_create.rst @@ -0,0 +1,83 @@ +====================================== +Creating and destroying a memcached_st +====================================== + +-------- +SYNOPSIS +-------- + +#include <libmemcached/memcached.h> + +.. c:type:: memcached_st + +.. c:function:: memcached_st* memcached_create(memcached_st *ptr) + +.. c:function:: void memcached_free(memcached_st *ptr) + +.. c:function:: memcached_st* memcached_clone(memcached_st *destination, memcached_st *source) + +.. c:function:: void memcached_servers_reset(memcached_st) + +Compile and link with -lmemcached + + +----------- +DESCRIPTION +----------- + +:c:func:`memcached_create` is used to create a :c:type:`memcached_st` +structure that will then be used by other libmemcached(3) functions to +communicate with the server. You should either pass a statically declared +:c:type:`memcached_st` to :c:func:`memcached_create` or +a NULL. If a NULL passed in then a structure is allocated for you. + +Please note, when you write new application use +:c:func:`memcached` over :c:func:`memcached_create`. + +:c:func:`memcached_clone` is similar to :c:func:`memcached_create` but +it copies the defaults and list of servers from the source +:c:type:`memcached_st`. If you pass a null as the argument for the source +to clone, it is the same as a call to :c:func:`memcached_create`. +If the destination argument is NULL a :c:type:`memcached_st` will be allocated +for you. + +:c:func:`memcached_servers_reset` allows you to zero out the list of +servers that the :c:type:`memcached_st` has. + +To clean up memory associated with a :c:type:`memcached_st` structure you +should pass it to :c:func:`memcached_free` when you are finished using it. +:c:func:`memcached_free` is the only way to make sure all memory is +deallocated when you finish using the structure. + +You may wish to avoid using memcached_create(3) or memcached_clone(3) with a +stack based allocation. The most common issues related to ABI safety involve +heap allocated structures. + + +------ +RETURN +------ + + +:c:func:`memcached_create` returns a pointer to the :c:type:`memcached_st` +that was created (or initialized). On an allocation failure, it returns NULL. + +:c:func:`memcached_clone` returns a pointer to the :c:type:`memcached_st` +that was created (or initialized). On an allocation failure, it returns NULL. + + +---- +HOME +---- + + +To find out more information please check: +`http://libmemcached.org/ <http://libmemcached.org/>`_ + + +-------- +SEE ALSO +-------- + + +:manpage:`memcached(1)` :manpage:`libmemcached(3)` :manpage:`memcached_strerror(3)` |