Merge of all doc fixes.
[m6w6/libmemcached] / docs / memcached_create.rst
1 ======================================
2 Creating and destroying a memcached_st
3 ======================================
4
5
6 Create a memcached_st structure
7
8
9 --------
10 SYNOPSIS
11 --------
12
13 #include <libmemcached/memcached.h>
14
15 .. c:function:: memcached_st *memcached_create (memcached_st *ptr);
16
17 .. c:function:: void memcached_free (memcached_st *ptr);
18
19 .. c:function:: memcached_st *memcached_clone (memcached_st *destination, memcached_st *source);
20
21 .. c:function:: void memcached_servers_reset(memcached_st);
22
23 Compile and link with -lmemcached
24
25
26 -----------
27 DESCRIPTION
28 -----------
29
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.
34
35 Please note, when you write new application use memcached_create_with_options() over memcached_create().
36
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.
41
42 memcached_servers_reset() allows you to zero out the list of servers that
43 the memcached_st has.
44
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
48 the structure.
49
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.
53
54
55 ------
56 RETURN
57 ------
58
59
60 memcached_create() returns a pointer to the memcached_st that was created
61 (or initialized). On an allocation failure, it returns NULL.
62
63 memcached_clone() returns a pointer to the memcached_st that was created
64 (or initialized). On an allocation failure, it returns NULL.
65
66
67 ----
68 HOME
69 ----
70
71
72 To find out more information please check:
73 `https://launchpad.net/libmemcached <https://launchpad.net/libmemcached>`_
74
75
76 --------
77 SEE ALSO
78 --------
79
80
81 :manpage:`memcached(1)` :manpage:`libmemcached(3)` :manpage:`memcached_strerror(3)`