1 ======================================
2 Creating and destroying a memcached_st
3 ======================================
6 Create a memcached_st structure
13 #include <libmemcached/memcached.h>
15 .. c:function:: memcached_st *memcached_create (memcached_st *ptr);
17 .. c:function:: void memcached_free (memcached_st *ptr);
19 .. c:function:: memcached_st *memcached_clone (memcached_st *destination, memcached_st *source);
21 .. c:function:: void memcached_servers_reset(memcached_st);
23 Compile and link with -lmemcached
30 memcached_create() is used to create a \ ``memcached_st``\ structure that will then
31 be used by other libmemcached(3) functions to communicate with the server. You
32 should either pass a statically declared \ ``memcached_st``\ to memcached_create() or
33 a NULL. If a NULL passed in then a structure is allocated for you.
35 Please note, when you write new application use memcached_create_with_options() over memcached_create().
37 memcached_clone() is similar to memcached_create(3) but it copies the
38 defaults and list of servers from the source \ ``memcached_st``\ . If you pass a null as
39 the argument for the source to clone, it is the same as a call to memcached_create().
40 If the destination argument is NULL a \ ``memcached_st``\ will be allocated for you.
42 memcached_servers_reset() allows you to zero out the list of servers that
45 To clean up memory associated with a \ ``memcached_st``\ structure you should pass
46 it to memcached_free() when you are finished using it. memcached_free() is
47 the only way to make sure all memory is deallocated when you finish using
50 You may wish to avoid using memcached_create(3) or memcached_clone(3) with a
51 stack based allocation. The most common issues related to ABI safety involve
52 heap allocated structures.
60 memcached_create() returns a pointer to the memcached_st that was created
61 (or initialized). On an allocation failure, it returns NULL.
63 memcached_clone() returns a pointer to the memcached_st that was created
64 (or initialized). On an allocation failure, it returns NULL.
72 To find out more information please check:
73 `https://launchpad.net/libmemcached <https://launchpad.net/libmemcached>`_
81 :manpage:`memcached(1)` :manpage:`libmemcached(3)` :manpage:`memcached_strerror(3)`