Merge in updates (including removal of some depcrated bits from the examples).
[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 .. index:: object: memcached_st
9
10 --------
11 SYNOPSIS
12 --------
13
14 #include <libmemcached/memcached.h>
15
16 .. c:function:: memcached_st *memcached_create (memcached_st *ptr);
17
18 .. c:function:: void memcached_free (memcached_st *ptr);
19
20 .. c:function:: memcached_st *memcached_clone (memcached_st *destination, memcached_st *source);
21
22 .. c:function:: void memcached_servers_reset(memcached_st);
23
24 Compile and link with -lmemcached
25
26
27 -----------
28 DESCRIPTION
29 -----------
30
31 memcached_create() is used to create a \ ``memcached_st``\ structure that will then
32 be used by other libmemcached(3) functions to communicate with the server. You
33 should either pass a statically declared \ ``memcached_st``\ to memcached_create() or
34 a NULL. If a NULL passed in then a structure is allocated for you.
35
36 Please note, when you write new application use memcached_create_with_options() over memcached_create().
37
38 memcached_clone() is similar to memcached_create(3) but it copies the
39 defaults and list of servers from the source \ ``memcached_st``\ . If you pass a null as
40 the argument for the source to clone, it is the same as a call to memcached_create().
41 If the destination argument is NULL a \ ``memcached_st``\ will be allocated for you.
42
43 memcached_servers_reset() allows you to zero out the list of servers that
44 the memcached_st has.
45
46 To clean up memory associated with a \ ``memcached_st``\ structure you should pass
47 it to memcached_free() when you are finished using it. memcached_free() is
48 the only way to make sure all memory is deallocated when you finish using
49 the structure.
50
51 You may wish to avoid using memcached_create(3) or memcached_clone(3) with a
52 stack based allocation. The most common issues related to ABI safety involve
53 heap allocated structures.
54
55
56 ------
57 RETURN
58 ------
59
60
61 memcached_create() returns a pointer to the memcached_st that was created
62 (or initialized). On an allocation failure, it returns NULL.
63
64 memcached_clone() returns a pointer to the memcached_st that was created
65 (or initialized). On an allocation failure, it returns NULL.
66
67
68 ----
69 HOME
70 ----
71
72
73 To find out more information please check:
74 `http://libmemcached.org/ <http://libmemcached.org/>`_
75
76
77 --------
78 SEE ALSO
79 --------
80
81
82 :manpage:`memcached(1)` :manpage:`libmemcached(3)` :manpage:`memcached_strerror(3)`