Merge in more documentation.
[awesomized/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 DESCRIPTION
27 -----------
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 memcached_clone() is similar to memcached_create(3) but it copies the
36 defaults and list of servers from the source \ ``memcached_st``\ . If you pass a null as
37 the argument for the source to clone, it is the same as a call to memcached_create().
38 If the destination argument is NULL a \ ``memcached_st``\ will be allocated for you.
39
40 memcached_servers_reset() allows you to zero out the list of servers that
41 the memcached_st has.
42
43 To clean up memory associated with a \ ``memcached_st``\ structure you should pass
44 it to memcached_free() when you are finished using it. memcached_free() is
45 the only way to make sure all memory is deallocated when you finish using
46 the structure.
47
48 You may wish to avoid using memcached_create(3) or memcached_clone(3) with a
49 stack based allocation. The most common issues related to ABI safety involve
50 heap allocated structures.
51
52
53 ------
54 RETURN
55 ------
56
57
58 memcached_create() returns a pointer to the memcached_st that was created
59 (or initialized). On an allocation failure, it returns NULL.
60
61 memcached_clone() returns a pointer to the memcached_st that was created
62 (or initialized). On an allocation failure, it returns NULL.
63
64
65 ----
66 HOME
67 ----
68
69
70 To find out more information please check:
71 `https://launchpad.net/libmemcached <https://launchpad.net/libmemcached>`_
72
73
74 ------
75 AUTHOR
76 ------
77
78
79 Brian Aker, <brian@tangent.org>
80
81
82 --------
83 SEE ALSO
84 --------
85
86
87 :manpage:`memcached(1)` :manpage:`libmemcached(3)` :manpage:`memcached_strerror(3)`