4 <!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
5 <!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
9 <meta name=
"viewport" content=
"width=device-width, initial-scale=1.0">
11 <title>Introducing the C Client Library for memcached
— libmemcached
1.0.99 documentation
</title>
20 <script type=
"text/javascript" src=
"_static/js/modernizr.min.js"></script>
23 <script type=
"text/javascript" id=
"documentation_options" data-url_root=
"./" src=
"_static/documentation_options.js"></script>
24 <script src=
"_static/jquery.js"></script>
25 <script src=
"_static/underscore.js"></script>
26 <script src=
"_static/doctools.js"></script>
27 <script src=
"_static/language_data.js"></script>
29 <script type=
"text/javascript" src=
"_static/js/theme.js"></script>
34 <link rel=
"stylesheet" href=
"_static/css/theme.css" type=
"text/css" />
35 <link rel=
"stylesheet" href=
"_static/pygments.css" type=
"text/css" />
36 <link rel=
"index" title=
"Index" href=
"genindex.html" />
37 <link rel=
"search" title=
"Search" href=
"search.html" />
38 <link rel=
"copyright" title=
"Copyright" href=
"copyright.html" />
39 <link rel=
"next" title=
"Versioning" href=
"versioning.html" />
40 <link rel=
"prev" title=
"Welcome to the libmemcached documentation" href=
"index.html" />
43 <body class=
"wy-body-for-nav">
46 <div class=
"wy-grid-for-nav">
48 <nav data-toggle=
"wy-nav-shift" class=
"wy-nav-side">
49 <div class=
"wy-side-scroll">
50 <div class=
"wy-side-nav-search" >
54 <a href=
"index.html" class=
"icon icon-home"> libmemcached
71 <form id=
"rtd-search-form" class=
"wy-form" action=
"search.html" method=
"get">
72 <input type=
"text" name=
"q" placeholder=
"Search docs" />
73 <input type=
"hidden" name=
"check_keywords" value=
"yes" />
74 <input type=
"hidden" name=
"area" value=
"default" />
81 <div class=
"wy-menu wy-menu-vertical" data-spy=
"affix" role=
"navigation" aria-label=
"main navigation">
88 <p class=
"caption"><span class=
"caption-text">Basics
</span></p>
90 <li class=
"toctree-l1 current"><a class=
"current reference internal" href=
"#">Introducing the C Client Library for memcached
</a><ul>
91 <li class=
"toctree-l2"><a class=
"reference internal" href=
"#synopsis">SYNOPSIS
</a></li>
92 <li class=
"toctree-l2"><a class=
"reference internal" href=
"#description">DESCRIPTION
</a></li>
93 <li class=
"toctree-l2"><a class=
"reference internal" href=
"#constants">CONSTANTS
</a></li>
94 <li class=
"toctree-l2"><a class=
"reference internal" href=
"#threads-and-processes">THREADS AND PROCESSES
</a></li>
95 <li class=
"toctree-l2"><a class=
"reference internal" href=
"#see-also">SEE ALSO
</a></li>
98 <li class=
"toctree-l1"><a class=
"reference internal" href=
"versioning.html">Versioning
</a></li>
99 <li class=
"toctree-l1"><a class=
"reference internal" href=
"memcached_create.html">Creating and destroying a memcached_st
</a><ul>
100 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_create.html#synopsis">SYNOPSIS
</a></li>
101 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_create.html#description">DESCRIPTION
</a></li>
102 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_create.html#return">RETURN
</a></li>
103 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_create.html#see-also">SEE ALSO
</a></li>
106 <li class=
"toctree-l1"><a class=
"reference internal" href=
"libmemcached_examples.html">Examples
</a><ul>
107 <li class=
"toctree-l2"><a class=
"reference internal" href=
"libmemcached_examples.html#description">DESCRIPTION
</a></li>
108 <li class=
"toctree-l2"><a class=
"reference internal" href=
"libmemcached_examples.html#connecting-to-servers">Connecting to servers
</a></li>
109 <li class=
"toctree-l2"><a class=
"reference internal" href=
"libmemcached_examples.html#creating-a-pool-of-servers">Creating a pool of servers
</a></li>
110 <li class=
"toctree-l2"><a class=
"reference internal" href=
"libmemcached_examples.html#adding-a-value-to-the-server">Adding a value to the server
</a></li>
111 <li class=
"toctree-l2"><a class=
"reference internal" href=
"libmemcached_examples.html#fetching-multiple-values">Fetching multiple values
</a></li>
112 <li class=
"toctree-l2"><a class=
"reference internal" href=
"libmemcached_examples.html#see-also">SEE ALSO
</a></li>
115 <li class=
"toctree-l1"><a class=
"reference internal" href=
"libmemcached_configuration.html">Configuring Libmemcached
</a><ul>
116 <li class=
"toctree-l2"><a class=
"reference internal" href=
"libmemcached_configuration.html#synopsis">SYNOPSIS
</a></li>
117 <li class=
"toctree-l2"><a class=
"reference internal" href=
"libmemcached_configuration.html#description">DESCRIPTION
</a></li>
118 <li class=
"toctree-l2"><a class=
"reference internal" href=
"libmemcached_configuration.html#environment">ENVIRONMENT
</a></li>
119 <li class=
"toctree-l2"><a class=
"reference internal" href=
"libmemcached_configuration.html#return">RETURN
</a></li>
120 <li class=
"toctree-l2"><a class=
"reference internal" href=
"libmemcached_configuration.html#example">EXAMPLE
</a></li>
121 <li class=
"toctree-l2"><a class=
"reference internal" href=
"libmemcached_configuration.html#see-also">SEE ALSO
</a></li>
124 <li class=
"toctree-l1"><a class=
"reference internal" href=
"libmemcached/memcached_last_error_message.html">Retrieving errors
</a><ul>
125 <li class=
"toctree-l2"><a class=
"reference internal" href=
"libmemcached/memcached_last_error_message.html#synopsis">SYNOPSIS
</a></li>
126 <li class=
"toctree-l2"><a class=
"reference internal" href=
"libmemcached/memcached_last_error_message.html#description">DESCRIPTION
</a></li>
127 <li class=
"toctree-l2"><a class=
"reference internal" href=
"libmemcached/memcached_last_error_message.html#return">RETURN
</a></li>
128 <li class=
"toctree-l2"><a class=
"reference internal" href=
"libmemcached/memcached_last_error_message.html#see-also">SEE ALSO
</a></li>
132 <p class=
"caption"><span class=
"caption-text">Working with Data
</span></p>
134 <li class=
"toctree-l1"><a class=
"reference internal" href=
"memcached_auto.html">Incrementing and Decrementing Values
</a><ul>
135 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_auto.html#synopsis">SYNOPSIS
</a></li>
136 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_auto.html#description">DESCRIPTION
</a></li>
137 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_auto.html#return">RETURN
</a></li>
138 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_auto.html#see-also">SEE ALSO
</a></li>
141 <li class=
"toctree-l1"><a class=
"reference internal" href=
"memcached_delete.html">Deleting data from a server
</a><ul>
142 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_delete.html#synopsis">SYNOPSIS
</a></li>
143 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_delete.html#description">DESCRIPTION
</a></li>
144 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_delete.html#return">RETURN
</a></li>
145 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_delete.html#see-also">SEE ALSO
</a></li>
148 <li class=
"toctree-l1"><a class=
"reference internal" href=
"libmemcached/memcached_exist.html">Determine if a keys exists.
</a><ul>
149 <li class=
"toctree-l2"><a class=
"reference internal" href=
"libmemcached/memcached_exist.html#synopsis">SYNOPSIS
</a></li>
150 <li class=
"toctree-l2"><a class=
"reference internal" href=
"libmemcached/memcached_exist.html#description">DESCRIPTION
</a></li>
151 <li class=
"toctree-l2"><a class=
"reference internal" href=
"libmemcached/memcached_exist.html#return">RETURN
</a></li>
152 <li class=
"toctree-l2"><a class=
"reference internal" href=
"libmemcached/memcached_exist.html#see-also">SEE ALSO
</a></li>
155 <li class=
"toctree-l1"><a class=
"reference internal" href=
"memcached_flush_buffers.html">Flushing client buffers
</a><ul>
156 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_flush_buffers.html#synopsis">SYNOPSIS
</a></li>
157 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_flush_buffers.html#description">DESCRIPTION
</a></li>
158 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_flush_buffers.html#return">RETURN
</a></li>
159 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_flush_buffers.html#see-also">SEE ALSO
</a></li>
162 <li class=
"toctree-l1"><a class=
"reference internal" href=
"memcached_flush.html">Wiping clean the contents of a server
</a><ul>
163 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_flush.html#synopsis">SYNOPSIS
</a></li>
164 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_flush.html#description">DESCRIPTION
</a></li>
165 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_flush.html#return">RETURN
</a></li>
166 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_flush.html#see-also">SEE ALSO
</a></li>
169 <li class=
"toctree-l1"><a class=
"reference internal" href=
"memcached_get.html">Retrieving data from the server
</a><ul>
170 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_get.html#synopsis">SYNOPSIS
</a></li>
171 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_get.html#description">DESCRIPTION
</a></li>
172 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_get.html#return">RETURN
</a></li>
173 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_get.html#see-also">SEE ALSO
</a></li>
176 <li class=
"toctree-l1"><a class=
"reference internal" href=
"memcached_result_st.html">Working with result sets
</a><ul>
177 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_result_st.html#synopsis">SYNOPSIS
</a></li>
178 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_result_st.html#description">DESCRIPTION
</a></li>
179 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_result_st.html#return">RETURN
</a></li>
180 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_result_st.html#see-also">SEE ALSO
</a></li>
183 <li class=
"toctree-l1"><a class=
"reference internal" href=
"memcached_set.html">Store, replace, add, or atomically add data to the server
</a><ul>
184 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_set.html#synopsis">SYNOPSIS
</a></li>
185 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_set.html#description">DESCRIPTION
</a></li>
186 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_set.html#return">RETURN
</a></li>
187 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_set.html#see-also">SEE ALSO
</a></li>
190 <li class=
"toctree-l1"><a class=
"reference internal" href=
"memcached_append.html">Appending or Prepending to data on the server
</a><ul>
191 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_append.html#synopsis">SYNOPSIS
</a></li>
192 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_append.html#description">DESCRIPTION
</a></li>
193 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_append.html#return">RETURN
</a></li>
194 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_append.html#see-also">SEE ALSO
</a></li>
197 <li class=
"toctree-l1"><a class=
"reference internal" href=
"memcached_cas.html">Working with data on the server in an atomic fashion
</a><ul>
198 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_cas.html#synopsis">SYNOPSIS
</a></li>
199 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_cas.html#description">DESCRIPTION
</a></li>
200 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_cas.html#return">RETURN
</a></li>
201 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_cas.html#see-also">SEE ALSO
</a></li>
205 <p class=
"caption"><span class=
"caption-text">Advanced Topics
</span></p>
207 <li class=
"toctree-l1"><a class=
"reference internal" href=
"libmemcached-1.0/memcached_set_encoding_key.html">Set encryption key
</a><ul>
208 <li class=
"toctree-l2"><a class=
"reference internal" href=
"libmemcached-1.0/memcached_set_encoding_key.html#synopsis">SYNOPSIS
</a></li>
209 <li class=
"toctree-l2"><a class=
"reference internal" href=
"libmemcached-1.0/memcached_set_encoding_key.html#description">DESCRIPTION
</a></li>
210 <li class=
"toctree-l2"><a class=
"reference internal" href=
"libmemcached-1.0/memcached_set_encoding_key.html#return">RETURN
</a></li>
211 <li class=
"toctree-l2"><a class=
"reference internal" href=
"libmemcached-1.0/memcached_set_encoding_key.html#see-also">SEE ALSO
</a></li>
214 <li class=
"toctree-l1"><a class=
"reference internal" href=
"memcached_behavior.html">Modifying how the driver behaves
</a><ul>
215 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_behavior.html#synopsis">SYNOPSIS
</a></li>
216 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_behavior.html#description">DESCRIPTION
</a></li>
217 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_behavior.html#return">RETURN
</a></li>
218 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_behavior.html#notes">NOTES
</a></li>
219 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_behavior.html#see-also">SEE ALSO
</a></li>
222 <li class=
"toctree-l1"><a class=
"reference internal" href=
"memcached_callback.html">Setting callbacks
</a><ul>
223 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_callback.html#synopsis">SYNOPSIS
</a></li>
224 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_callback.html#description">DESCRIPTION
</a></li>
225 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_callback.html#return">RETURN
</a></li>
226 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_callback.html#see-also">SEE ALSO
</a></li>
229 <li class=
"toctree-l1"><a class=
"reference internal" href=
"memcached_dump.html">Dumping data from a server
</a><ul>
230 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_dump.html#synopsis">SYNOPSIS
</a></li>
231 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_dump.html#description">DESCRIPTION
</a></li>
232 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_dump.html#return">RETURN
</a></li>
233 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_dump.html#see-also">SEE ALSO
</a></li>
236 <li class=
"toctree-l1"><a class=
"reference internal" href=
"memcached_generate_hash_value.html">Generating hash values directly
</a><ul>
237 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_generate_hash_value.html#synopsis">SYNOPSIS
</a></li>
238 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_generate_hash_value.html#description">DESCRIPTION
</a></li>
239 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_generate_hash_value.html#return">RETURN
</a></li>
240 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_generate_hash_value.html#see-also">SEE ALSO
</a></li>
243 <li class=
"toctree-l1"><a class=
"reference internal" href=
"memcached_memory_allocators.html">Use custom allocators for embedded usage
</a><ul>
244 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_memory_allocators.html#synopsis">SYNOPSIS
</a></li>
245 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_memory_allocators.html#description">DESCRIPTION
</a></li>
246 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_memory_allocators.html#notes">NOTES
</a></li>
247 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_memory_allocators.html#return">RETURN
</a></li>
248 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_memory_allocators.html#see-also">SEE ALSO
</a></li>
251 <li class=
"toctree-l1"><a class=
"reference internal" href=
"memcached_quit.html">Disconnecting a client from a server
</a><ul>
252 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_quit.html#synopsis">SYNOPSIS
</a></li>
253 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_quit.html#description">DESCRIPTION
</a></li>
254 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_quit.html#return">RETURN
</a></li>
255 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_quit.html#see-also">SEE ALSO
</a></li>
258 <li class=
"toctree-l1"><a class=
"reference internal" href=
"libmemcached/memcached_return_t.html">Error Codes (memcached_return_t)
</a><ul>
259 <li class=
"toctree-l2"><a class=
"reference internal" href=
"libmemcached/memcached_return_t.html#synopsis">SYNOPSIS
</a></li>
260 <li class=
"toctree-l2"><a class=
"reference internal" href=
"libmemcached/memcached_return_t.html#see-also">SEE ALSO
</a></li>
263 <li class=
"toctree-l1"><a class=
"reference internal" href=
"memcached_sasl.html">SASL support
</a><ul>
264 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_sasl.html#synopsis">SYNOPSIS
</a></li>
265 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_sasl.html#description">DESCRIPTION
</a></li>
266 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_sasl.html#return">RETURN
</a></li>
267 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_sasl.html#see-also">SEE ALSO
</a></li>
270 <li class=
"toctree-l1"><a class=
"reference internal" href=
"memcached_server_st.html">Managing lists of servers
</a><ul>
271 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_server_st.html#synopsis">SYNOPSIS
</a></li>
272 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_server_st.html#description">DESCRIPTION
</a></li>
273 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_server_st.html#return">RETURN
</a></li>
274 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_server_st.html#see-also">SEE ALSO
</a></li>
277 <li class=
"toctree-l1"><a class=
"reference internal" href=
"memcached_servers.html">Manipulate the server information stored in memcached_st
</a><ul>
278 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_servers.html#synopsis">SYNOPSIS
</a></li>
279 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_servers.html#description">DESCRIPTION
</a></li>
280 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_servers.html#return">RETURN
</a></li>
281 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_servers.html#see-also">SEE ALSO
</a></li>
284 <li class=
"toctree-l1"><a class=
"reference internal" href=
"memcached_strerror.html">Converting Errors, memcached_return_t, to strings
</a><ul>
285 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_strerror.html#synopsis">SYNOPSIS
</a></li>
286 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_strerror.html#description">DESCRIPTION
</a></li>
287 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_strerror.html#return">RETURN
</a></li>
288 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_strerror.html#see-also">SEE ALSO
</a></li>
291 <li class=
"toctree-l1"><a class=
"reference internal" href=
"error_messages.html">Client Error messages
</a><ul>
292 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_AUTH_CONTINUE.html">MEMCACHED_AUTH_CONTINUE
</a></li>
293 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_AUTH_FAILURE.html">MEMCACHED_AUTH_FAILURE
</a></li>
294 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_AUTH_PROBLEM.html">MEMCACHED_AUTH_PROBLEM
</a></li>
295 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_BAD_KEY_PROVIDED.html">MEMCACHED_BAD_KEY_PROVIDED
</a></li>
296 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_BUFFERED.html">MEMCACHED_BUFFERED
</a></li>
297 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_CLIENT_ERROR.html">MEMCACHED_CLIENT_ERROR
</a></li>
298 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_CONNECTION_BIND_FAILURE.html">MEMCACHED_CONNECTION_BIND_FAILURE
</a></li>
299 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_CONNECTION_FAILURE.html">MEMCACHED_CONNECTION_FAILURE
</a></li>
300 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_CONNECTION_SOCKET_CREATE_FAILURE.html">MEMCACHED_CONNECTION_SOCKET_CREATE_FAILURE
</a></li>
301 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_DATA_DOES_NOT_EXIST.html">MEMCACHED_DATA_DOES_NOT_EXIST
</a></li>
302 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_DATA_EXISTS.html">MEMCACHED_DATA_EXISTS
</a></li>
303 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_DELETED.html">MEMCACHED_DELETED
</a></li>
304 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_DEPRECATED.html">MEMCACHED_DEPRECATED
</a></li>
305 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_E2BIG.html">MEMCACHED_E2BIG
</a></li>
306 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_END.html">MEMCACHED_END
</a></li>
307 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_ERRNO.html">MEMCACHED_ERRNO
</a></li>
308 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_FAILURE.html">MEMCACHED_FAILURE
</a></li>
309 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_FAIL_UNIX_SOCKET.html">MEMCACHED_FAIL_UNIX_SOCKET
</a></li>
310 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_FETCH_NOTFINISHED.html">MEMCACHED_FETCH_NOTFINISHED
</a></li>
311 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_HOST_LOOKUP_FAILURE.html">MEMCACHED_HOST_LOOKUP_FAILURE
</a></li>
312 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_INVALID_ARGUMENTS.html">MEMCACHED_INVALID_ARGUMENTS
</a></li>
313 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_INVALID_HOST_PROTOCOL.html">MEMCACHED_INVALID_HOST_PROTOCOL
</a></li>
314 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_ITEM.html">MEMCACHED_ITEM
</a></li>
315 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_KEY_TOO_BIG.html">MEMCACHED_KEY_TOO_BIG
</a></li>
316 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_MAXIMUM_RETURN.html">MEMCACHED_MAXIMUM_RETURN
</a></li>
317 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_MEMORY_ALLOCATION_FAILURE.html">MEMCACHED_MEMORY_ALLOCATION_FAILURE
</a></li>
318 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_NOTFOUND.html">MEMCACHED_NOTFOUND
</a></li>
319 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_NOTSTORED.html">MEMCACHED_NOTSTORED
</a></li>
320 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_NOT_SUPPORTED.html">MEMCACHED_NOT_SUPPORTED
</a></li>
321 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_NO_KEY_PROVIDED.html">MEMCACHED_NO_KEY_PROVIDED
</a></li>
322 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_NO_SERVERS.html">MEMCACHED_NO_SERVERS
</a></li>
323 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_PARSE_ERROR.html">MEMCACHED_PARSE_ERROR
</a></li>
324 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_PARSE_USER_ERROR.html">MEMCACHED_PARSE_USER_ERROR
</a></li>
325 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_PARTIAL_READ.html">MEMCACHED_PARTIAL_READ
</a></li>
326 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_PROTOCOL_ERROR.html">MEMCACHED_PROTOCOL_ERROR
</a></li>
327 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_READ_FAILURE.html">MEMCACHED_READ_FAILURE
</a></li>
328 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_SERVER_ERROR.html">MEMCACHED_SERVER_ERROR
</a></li>
329 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_SERVER_MARKED_DEAD.html">MEMCACHED_SERVER_MARKED_DEAD
</a></li>
330 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_SOME_ERRORS.html">MEMCACHED_SOME_ERRORS
</a></li>
331 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_STAT.html">MEMCACHED_STAT
</a></li>
332 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_STORED.html">MEMCACHED_STORED
</a></li>
333 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_SUCCESS.html">MEMCACHED_SUCCESS
</a></li>
334 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_TIMEOUT.html">MEMCACHED_TIMEOUT
</a></li>
335 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_UNKNOWN_READ_FAILURE.html">MEMCACHED_UNKNOWN_READ_FAILURE
</a></li>
336 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_UNKNOWN_STAT_KEY.html">MEMCACHED_UNKNOWN_STAT_KEY
</a></li>
337 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_VALUE.html">MEMCACHED_VALUE
</a></li>
338 <li class=
"toctree-l2"><a class=
"reference internal" href=
"client_errors/MEMCACHED_WRITE_FAILURE.html">MEMCACHED_WRITE_FAILURE
</a></li>
341 <li class=
"toctree-l1"><a class=
"reference internal" href=
"memcached_user_data.html">Storing custom user information in the client.
</a><ul>
342 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_user_data.html#library">LIBRARY
</a></li>
343 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_user_data.html#synopsis">SYNOPSIS
</a></li>
344 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_user_data.html#description">DESCRIPTION
</a></li>
345 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_user_data.html#return">RETURN
</a></li>
346 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_user_data.html#see-also">SEE ALSO
</a></li>
349 <li class=
"toctree-l1"><a class=
"reference internal" href=
"memcached_verbosity.html">Setting the verbosity of a server
</a><ul>
350 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_verbosity.html#synopsis">SYNOPSIS
</a></li>
351 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_verbosity.html#description">DESCRIPTION
</a></li>
352 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_verbosity.html#return">RETURN
</a></li>
353 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_verbosity.html#see-also">SEE ALSO
</a></li>
356 <li class=
"toctree-l1"><a class=
"reference internal" href=
"memcached_version.html">Getting version information about the client and server
</a><ul>
357 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_version.html#synopsis">SYNOPSIS
</a></li>
358 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_version.html#description">DESCRIPTION
</a></li>
359 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_version.html#return">RETURN
</a></li>
360 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_version.html#see-also">SEE ALSO
</a></li>
363 <li class=
"toctree-l1"><a class=
"reference internal" href=
"libmemcached/defaults.html">DEFAULTS
</a></li>
365 <p class=
"caption"><span class=
"caption-text">Interface Versions
</span></p>
367 <li class=
"toctree-l1"><a class=
"reference internal" href=
"libmemcached-1.0/index.html">libmemcached
1.0 API
</a><ul>
368 <li class=
"toctree-l2"><a class=
"reference internal" href=
"libmemcached-1.0/memcached_touch.html">memcached_touch, memcached_touch_by_key
</a></li>
371 <li class=
"toctree-l1"><a class=
"reference internal" href=
"libmemcached-1.1/index.html">libmemcached
1.1 API
</a></li>
373 <p class=
"caption"><span class=
"caption-text">Deprecated Functions
</span></p>
375 <li class=
"toctree-l1"><a class=
"reference internal" href=
"libmemcached/memcached_fetch.html">memcached_fetch
</a></li>
377 <p class=
"caption"><span class=
"caption-text">Platform Specifics
</span></p>
379 <li class=
"toctree-l1"><a class=
"reference internal" href=
"tap.html">Systemtap support
</a></li>
380 <li class=
"toctree-l1"><a class=
"reference internal" href=
"types.html">Required C types
</a><ul>
381 <li class=
"toctree-l2"><a class=
"reference internal" href=
"types.html#types">Types
</a></li>
382 <li class=
"toctree-l2"><a class=
"reference internal" href=
"types.html#c-types-used">C Types Used
</a></li>
386 <p class=
"caption"><span class=
"caption-text">Deriving Statistics from a Server
</span></p>
388 <li class=
"toctree-l1"><a class=
"reference internal" href=
"memcached_analyze.html">Analyzing servers
</a><ul>
389 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_analyze.html#synopsis">SYNOPSIS
</a></li>
390 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_analyze.html#description">DESCRIPTION
</a></li>
391 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_analyze.html#return">RETURN
</a></li>
392 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_analyze.html#see-also">SEE ALSO
</a></li>
395 <li class=
"toctree-l1"><a class=
"reference internal" href=
"memcached_stats.html">Working with statistical information from a server
</a><ul>
396 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_stats.html#synopsis">SYNOPSIS
</a></li>
397 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_stats.html#description">DESCRIPTION
</a></li>
398 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_stats.html#return">RETURN
</a></li>
399 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_stats.html#see-also">SEE ALSO
</a></li>
403 <p class=
"caption"><span class=
"caption-text">Libmemcachedutil
</span></p>
405 <li class=
"toctree-l1"><a class=
"reference internal" href=
"libmemcachedutil.html">Introducing libmemcachedutil
</a><ul>
406 <li class=
"toctree-l2"><a class=
"reference internal" href=
"libmemcachedutil.html#synopsis">SYNOPSIS
</a></li>
407 <li class=
"toctree-l2"><a class=
"reference internal" href=
"libmemcachedutil.html#description">DESCRIPTION
</a></li>
408 <li class=
"toctree-l2"><a class=
"reference internal" href=
"libmemcachedutil.html#threads">THREADS
</a></li>
409 <li class=
"toctree-l2"><a class=
"reference internal" href=
"libmemcachedutil.html#see-also">SEE ALSO
</a></li>
412 <li class=
"toctree-l1"><a class=
"reference internal" href=
"memcached_pool.html">Working with memcached pools
</a><ul>
413 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_pool.html#synopsis">SYNOPSIS
</a></li>
414 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_pool.html#description">DESCRIPTION
</a></li>
415 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_pool.html#return">RETURN
</a></li>
416 <li class=
"toctree-l2"><a class=
"reference internal" href=
"memcached_pool.html#see-also">SEE ALSO
</a></li>
420 <p class=
"caption"><span class=
"caption-text">Client Applications
</span></p>
422 <li class=
"toctree-l1"><a class=
"reference internal" href=
"bin/memcapable.html">memcapable - Checking a Memcached server capabilities and compatibility
</a><ul>
423 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memcapable.html#synopsis">SYNOPSIS
</a></li>
424 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memcapable.html#description">DESCRIPTION
</a></li>
425 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memcapable.html#limitations">LIMITATIONS
</a></li>
426 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memcapable.html#options">OPTIONS
</a></li>
427 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memcapable.html#see-also">SEE ALSO
</a></li>
430 <li class=
"toctree-l1"><a class=
"reference internal" href=
"bin/memcat.html">memcat - “cat” data from a server
</a><ul>
431 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memcat.html#synopsis">SYNOPSIS
</a></li>
432 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memcat.html#description">DESCRIPTION
</a></li>
433 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memcat.html#options">OPTIONS
</a></li>
434 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memcat.html#see-also">SEE ALSO
</a></li>
437 <li class=
"toctree-l1"><a class=
"reference internal" href=
"bin/memcp.html">memcp - Copy data to a server
</a><ul>
438 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memcp.html#synopsis">SYNOPSIS
</a></li>
439 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memcp.html#description">DESCRIPTION
</a></li>
440 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memcp.html#options">OPTIONS
</a></li>
441 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memcp.html#see-also">SEE ALSO
</a></li>
444 <li class=
"toctree-l1"><a class=
"reference internal" href=
"bin/memdump.html">memdump - Dumping your server
</a><ul>
445 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memdump.html#synopsis">SYNOPSIS
</a></li>
446 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memdump.html#description">DESCRIPTION
</a></li>
447 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memdump.html#options">OPTIONS
</a></li>
448 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memdump.html#see-also">SEE ALSO
</a></li>
451 <li class=
"toctree-l1"><a class=
"reference internal" href=
"bin/memerror.html">memerror - translate an error code to a string
</a><ul>
452 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memerror.html#synopsis">SYNOPSIS
</a></li>
453 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memerror.html#description">DESCRIPTION
</a></li>
454 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memerror.html#options">OPTIONS
</a></li>
455 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memerror.html#see-also">SEE ALSO
</a></li>
458 <li class=
"toctree-l1"><a class=
"reference internal" href=
"bin/memflush.html">memflush - flush all data from a server
</a><ul>
459 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memflush.html#synopsis">SYNOPSIS
</a></li>
460 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memflush.html#description">DESCRIPTION
</a></li>
461 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memflush.html#options">OPTIONS
</a></li>
462 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memflush.html#see-also">SEE ALSO
</a></li>
465 <li class=
"toctree-l1"><a class=
"reference internal" href=
"bin/memrm.html">memrm - Remove data from a server
</a><ul>
466 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memrm.html#synopsis">SYNOPSIS
</a></li>
467 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memrm.html#description">DESCRIPTION
</a></li>
468 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memrm.html#options">OPTIONS
</a></li>
469 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memrm.html#see-also">SEE ALSO
</a></li>
472 <li class=
"toctree-l1"><a class=
"reference internal" href=
"bin/memslap.html">memslap - Load testing and benchmarking a server
</a><ul>
473 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memslap.html#synopsis">SYNOPSIS
</a></li>
474 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memslap.html#description">DESCRIPTION
</a></li>
475 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memslap.html#options">OPTIONS
</a></li>
476 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memslap.html#see-also">SEE ALSO
</a></li>
479 <li class=
"toctree-l1"><a class=
"reference internal" href=
"bin/memaslap.html">memaslap - Load testing and benchmarking a server
</a><ul>
480 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memaslap.html#synopsis">SYNOPSIS
</a></li>
481 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memaslap.html#description">DESCRIPTION
</a></li>
482 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memaslap.html#features">FEATURES
</a></li>
483 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memaslap.html#details">DETAILS
</a></li>
484 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memaslap.html#usage">USAGE
</a></li>
485 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memaslap.html#configuration-file">Configuration file
</a></li>
486 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memaslap.html#format-of-output">Format of output
</a></li>
487 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memaslap.html#options">OPTIONS
</a></li>
488 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memaslap.html#examples">EXAMPLES
</a></li>
489 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memaslap.html#see-also">SEE ALSO
</a></li>
492 <li class=
"toctree-l1"><a class=
"reference internal" href=
"bin/memstat.html">memstat - Gather statistics from a server
</a><ul>
493 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memstat.html#synopsis">SYNOPSIS
</a></li>
494 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memstat.html#description">DESCRIPTION
</a></li>
495 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memstat.html#options">OPTIONS
</a></li>
496 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memstat.html#see-also">SEE ALSO
</a></li>
499 <li class=
"toctree-l1"><a class=
"reference internal" href=
"bin/memexist.html">memexist - Check for the existence of a key
</a><ul>
500 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memexist.html#synopsis">SYNOPSIS
</a></li>
501 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memexist.html#description">DESCRIPTION
</a></li>
502 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memexist.html#options">OPTIONS
</a></li>
503 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memexist.html#see-also">SEE ALSO
</a></li>
506 <li class=
"toctree-l1"><a class=
"reference internal" href=
"bin/memparse.html">memparse - Parse an option string
</a><ul>
507 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memparse.html#synopsis">SYNOPSIS
</a></li>
508 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memparse.html#description">DESCRIPTION
</a></li>
509 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memparse.html#options">OPTIONS
</a></li>
510 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memparse.html#see-also">SEE ALSO
</a></li>
513 <li class=
"toctree-l1"><a class=
"reference internal" href=
"bin/memping.html">memping - Test to see if a server is available.
</a><ul>
514 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memping.html#synopsis">SYNOPSIS
</a></li>
515 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memping.html#description">DESCRIPTION
</a></li>
516 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memping.html#options">OPTIONS
</a></li>
517 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memping.html#see-also">SEE ALSO
</a></li>
520 <li class=
"toctree-l1"><a class=
"reference internal" href=
"bin/memtouch.html">memtouch - Touches a key.
</a><ul>
521 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memtouch.html#synopsis">SYNOPSIS
</a></li>
522 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memtouch.html#description">DESCRIPTION
</a></li>
523 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memtouch.html#options">OPTIONS
</a></li>
524 <li class=
"toctree-l2"><a class=
"reference internal" href=
"bin/memtouch.html#see-also">SEE ALSO
</a></li>
528 <p class=
"caption"><span class=
"caption-text">Libhashkit
</span></p>
530 <li class=
"toctree-l1"><a class=
"reference internal" href=
"libhashkit.html">Introducing libhashkit
</a><ul>
531 <li class=
"toctree-l2"><a class=
"reference internal" href=
"libhashkit.html#description">DESCRIPTION
</a></li>
532 <li class=
"toctree-l2"><a class=
"reference internal" href=
"libhashkit.html#see-also">SEE ALSO
</a></li>
535 <li class=
"toctree-l1"><a class=
"reference internal" href=
"hashkit_create.html">Creating a hashkit structure
</a><ul>
536 <li class=
"toctree-l2"><a class=
"reference internal" href=
"hashkit_create.html#synopsis">SYNOPSIS
</a></li>
537 <li class=
"toctree-l2"><a class=
"reference internal" href=
"hashkit_create.html#description">DESCRIPTION
</a></li>
538 <li class=
"toctree-l2"><a class=
"reference internal" href=
"hashkit_create.html#return-value">RETURN VALUE
</a></li>
539 <li class=
"toctree-l2"><a class=
"reference internal" href=
"hashkit_create.html#see-also">SEE ALSO
</a></li>
542 <li class=
"toctree-l1"><a class=
"reference internal" href=
"hashkit_functions.html">Available Hashes
</a><ul>
543 <li class=
"toctree-l2"><a class=
"reference internal" href=
"hashkit_functions.html#synopsis">SYNOPSIS
</a></li>
544 <li class=
"toctree-l2"><a class=
"reference internal" href=
"hashkit_functions.html#description">DESCRIPTION
</a></li>
545 <li class=
"toctree-l2"><a class=
"reference internal" href=
"hashkit_functions.html#return-value">RETURN VALUE
</a></li>
546 <li class=
"toctree-l2"><a class=
"reference internal" href=
"hashkit_functions.html#see-also">SEE ALSO
</a></li>
549 <li class=
"toctree-l1"><a class=
"reference internal" href=
"hashkit_value.html">hashkit_value
</a><ul>
550 <li class=
"toctree-l2"><a class=
"reference internal" href=
"hashkit_value.html#synopsis">SYNOPSIS
</a></li>
551 <li class=
"toctree-l2"><a class=
"reference internal" href=
"hashkit_value.html#description">DESCRIPTION
</a></li>
552 <li class=
"toctree-l2"><a class=
"reference internal" href=
"hashkit_value.html#return-value">RETURN VALUE
</a></li>
553 <li class=
"toctree-l2"><a class=
"reference internal" href=
"hashkit_value.html#see-also">SEE ALSO
</a></li>
564 <section data-toggle=
"wy-nav-shift" class=
"wy-nav-content-wrap">
567 <nav class=
"wy-nav-top" aria-label=
"top navigation">
569 <i data-toggle=
"wy-nav-top" class=
"fa fa-bars"></i>
570 <a href=
"index.html">libmemcached
</a>
575 <div class=
"wy-nav-content">
577 <div class=
"rst-content">
595 <div role=
"navigation" aria-label=
"breadcrumbs navigation">
597 <ul class=
"wy-breadcrumbs">
599 <li><a href=
"index.html">Docs
</a> »</li>
601 <li>Introducing the C Client Library for memcached
</li>
604 <li class=
"wy-breadcrumbs-aside">
615 <div role=
"main" class=
"document" itemscope=
"itemscope" itemtype=
"http://schema.org/Article">
616 <div itemprop=
"articleBody">
618 <div class=
"section" id=
"introducing-the-c-client-library-for-memcached">
619 <h1>Introducing the C Client Library for memcached
<a class=
"headerlink" href=
"#introducing-the-c-client-library-for-memcached" title=
"Permalink to this headline">¶
</a></h1>
620 <div class=
"section" id=
"synopsis">
621 <h2>SYNOPSIS
<a class=
"headerlink" href=
"#synopsis" title=
"Permalink to this headline">¶
</a></h2>
622 <p>#include
<libmemcached/memcached.h
></p>
623 <p>Compile and link with -lmemcached
</p>
624 <hr class=
"docutils" />
625 <p>libMemcached is an open source C/C++ client library and tools for the memcached server (
<a class=
"reference external" href=
"http://memcached.org/">http://memcached.org/
</a>). It has been designed to be light on memory usage, thread safe, and provide full access to server side methods.
</p>
626 <p>libMemcached was designed to provide the greatest number of options to use Memcached. Some of the features provided:
</p>
627 <ol class=
"arabic simple">
628 <li><p>Asynchronous and Synchronous Transport Support.
</p></li>
629 <li><p>Consistent Hashing and Distribution.
</p></li>
630 <li><p>Tunable Hashing algorithm to match keys.
</p></li>
631 <li><p>Access to large object support.
</p></li>
632 <li><p>Local replication.
</p></li>
633 <li><p>A complete reference guide and documentation to the API.
</p></li>
634 <li><p>Tools to Manage your Memcached networks.
</p></li>
637 <div class=
"section" id=
"description">
638 <h2>DESCRIPTION
<a class=
"headerlink" href=
"#description" title=
"Permalink to this headline">¶
</a></h2>
639 <p>“Memcached is a high-performance, distributed memory object caching
640 system, generic in nature, but intended for use in speeding up dynamic web
641 applications by alleviating database load.”
<a class=
"reference external" href=
"http://memcached.org/">http://memcached.org/
</a></p>
642 <p><strong class=
"program">libmemcached
</strong> is a small, thread-safe client library for the
643 memcached protocol. The code has all been written to allow
644 for both web and embedded usage. It handles the work behind routing
645 individual keys to specific servers specified by the developer (and values are
646 matched based on server order as supplied by the user). It implements
647 a modular and consistent method of object distribution.
</p>
648 <p>There are multiple implemented routing and hashing methods. See the
649 <a class=
"reference internal" href=
"memcached_behavior.html#c.memcached_behavior_set" title=
"memcached_behavior_set"><code class=
"xref c c-func docutils literal notranslate"><span class=
"pre">memcached_behavior_set()
</span></code></a> manpage for more information.
</p>
650 <p>All operations are performed against a
<a class=
"reference internal" href=
"memcached_create.html#c.memcached_st" title=
"memcached_st"><code class=
"xref c c-type docutils literal notranslate"><span class=
"pre">memcached_st
</span></code></a> structure.
651 These structures can either be dynamically allocated or statically
652 allocated and then initialized by
<a class=
"reference internal" href=
"memcached_create.html#c.memcached_create" title=
"memcached_create"><code class=
"xref c c-func docutils literal notranslate"><span class=
"pre">memcached_create()
</span></code></a>. Functions have
653 been written in order to encapsulate the
<a class=
"reference internal" href=
"memcached_create.html#c.memcached_st" title=
"memcached_st"><code class=
"xref c c-type docutils literal notranslate"><span class=
"pre">memcached_st
</span></code></a>. It is not
654 recommended that you operate directly against the structure.
</p>
655 <p>Nearly all functions return a
<a class=
"reference internal" href=
"libmemcached/memcached_return_t.html#c.memcached_return_t" title=
"memcached_return_t"><code class=
"xref c c-type docutils literal notranslate"><span class=
"pre">memcached_return_t
</span></code></a> value.
656 This value can be translated to a printable string with
657 <a class=
"reference internal" href=
"memcached_strerror.html#c.memcached_strerror" title=
"memcached_strerror"><code class=
"xref c c-type docutils literal notranslate"><span class=
"pre">memcached_strerror
</span></code></a>.
</p>
658 <p>Objects are stored on servers by hashing keys. The hash value maps the key to a particular server. All clients understand how this hashing works, so it is possibly to reliably both push data to a server and retrieve data from a server.
</p>
659 <p>Group keys can be optionally used to group sets of objects with servers.
</p>
660 <p>Namespaces are supported, and can be used to partition caches so that multiple applications can use the same memcached servers.
</p>
661 <p><a class=
"reference internal" href=
"memcached_create.html#c.memcached_st" title=
"memcached_st"><code class=
"xref c c-type docutils literal notranslate"><span class=
"pre">memcached_st
</span></code></a> structures are thread-safe, but each thread must
662 contain its own structure (that is, if you want to share these among
663 threads you must provide your own locking). No global variables are
664 used in this library.
</p>
665 <p>If you are working with GNU autotools you will want to add the following to
666 your COPYING to properly include libmemcached in your application.
</p>
667 <p>PKG_CHECK_MODULES(DEPS, libmemcached
>=
0.8.0)
668 AC_SUBST(DEPS_CFLAGS)
669 AC_SUBST(DEPS_LIBS)
</p>
670 <p>Some features of the library must be enabled through
<a class=
"reference internal" href=
"memcached_behavior.html#c.memcached_behavior_set" title=
"memcached_behavior_set"><code class=
"xref c c-func docutils literal notranslate"><span class=
"pre">memcached_behavior_set()
</span></code></a>.
</p>
671 <p>Hope you enjoy it!
</p>
673 <div class=
"section" id=
"constants">
674 <h2>CONSTANTS
<a class=
"headerlink" href=
"#constants" title=
"Permalink to this headline">¶
</a></h2>
675 <p>A number of constants have been provided for in the library.
</p>
677 <dt id=
"c.MEMCACHED_DEFAULT_PORT">
678 <code class=
"sig-name descname">MEMCACHED_DEFAULT_PORT
</code><a class=
"headerlink" href=
"#c.MEMCACHED_DEFAULT_PORT" title=
"Permalink to this definition">¶
</a></dt>
679 <dd><p>The default port used by memcached(
3).
</p>
683 <dt id=
"c.MEMCACHED_MAX_KEY">
684 <code class=
"sig-name descname">MEMCACHED_MAX_KEY
</code><a class=
"headerlink" href=
"#c.MEMCACHED_MAX_KEY" title=
"Permalink to this definition">¶
</a></dt>
685 <dd><p>Default maximum size of a key (which includes the null pointer). Master keys
686 have no limit, this only applies to keys used for storage.
</p>
690 <dt id=
"c.MEMCACHED_MAX_BUFFER">
691 <code class=
"sig-name descname">MEMCACHED_MAX_BUFFER
</code><a class=
"headerlink" href=
"#c.MEMCACHED_MAX_BUFFER" title=
"Permalink to this definition">¶
</a></dt>
692 <dd><p>Default size of read/write buffers (which includes the null pointer).
</p>
696 <dt id=
"c.MEMCACHED_STRIDE">
697 <code class=
"sig-name descname">MEMCACHED_STRIDE
</code><a class=
"headerlink" href=
"#c.MEMCACHED_STRIDE" title=
"Permalink to this definition">¶
</a></dt>
698 <dd><p>This is the “stride” used in the consistent hash used between replicas.
</p>
702 <dt id=
"c.MEMCACHED_MAX_HOST_LENGTH">
703 <code class=
"sig-name descname">MEMCACHED_MAX_HOST_LENGTH
</code><a class=
"headerlink" href=
"#c.MEMCACHED_MAX_HOST_LENGTH" title=
"Permalink to this definition">¶
</a></dt>
704 <dd><p>Maximum allowed size of the hostname.
</p>
708 <dt id=
"c.LIBMEMCACHED_VERSION_STRING">
709 <code class=
"sig-name descname">LIBMEMCACHED_VERSION_STRING
</code><a class=
"headerlink" href=
"#c.LIBMEMCACHED_VERSION_STRING" title=
"Permalink to this definition">¶
</a></dt>
710 <dd><p>String value of libmemcached version such as “
1.23.4”
</p>
714 <dt id=
"c.LIBMEMCACHED_VERSION_HEX">
715 <code class=
"sig-name descname">LIBMEMCACHED_VERSION_HEX
</code><a class=
"headerlink" href=
"#c.LIBMEMCACHED_VERSION_HEX" title=
"Permalink to this definition">¶
</a></dt>
716 <dd><p>Hex value of the version number. “
0x00048000” This can be used for comparing versions based on number.
</p>
720 <dt id=
"c.MEMCACHED_PREFIX_KEY_MAX_SIZE">
721 <code class=
"sig-name descname">MEMCACHED_PREFIX_KEY_MAX_SIZE
</code><a class=
"headerlink" href=
"#c.MEMCACHED_PREFIX_KEY_MAX_SIZE" title=
"Permalink to this definition">¶
</a></dt>
722 <dd><p>Maximum length allowed for namespacing of a key.
</p>
726 <div class=
"section" id=
"threads-and-processes">
727 <h2>THREADS AND PROCESSES
<a class=
"headerlink" href=
"#threads-and-processes" title=
"Permalink to this headline">¶
</a></h2>
728 <p>When using threads or forked processes it is important to keep one instance
729 of
<a class=
"reference internal" href=
"memcached_create.html#c.memcached_st" title=
"memcached_st"><code class=
"xref c c-type docutils literal notranslate"><span class=
"pre">memcached_st
</span></code></a> per process or thread. Without creating your own
730 locking structures you can not share a single
<a class=
"reference internal" href=
"memcached_create.html#c.memcached_st" title=
"memcached_st"><code class=
"xref c c-type docutils literal notranslate"><span class=
"pre">memcached_st
</span></code></a>. However,
731 you can call
<a class=
"reference internal" href=
"memcached_quit.html#c.memcached_quit" title=
"memcached_quit"><code class=
"xref c c-func docutils literal notranslate"><span class=
"pre">memcached_quit()
</span></code></a> on a
<a class=
"reference internal" href=
"memcached_create.html#c.memcached_st" title=
"memcached_st"><code class=
"xref c c-type docutils literal notranslate"><span class=
"pre">memcached_st
</span></code></a> and then use the resulting cloned structure.
</p>
733 <div class=
"section" id=
"see-also">
734 <h2>SEE ALSO
<a class=
"headerlink" href=
"#see-also" title=
"Permalink to this headline">¶
</a></h2>
735 <p><em class=
"manpage">memcached(
1)
</em> <em class=
"manpage">libmemcached_examples(
3)
</em>
736 <em class=
"manpage">libmemcached(
1)
</em> <em class=
"manpage">memcat(
1)
</em> <em class=
"manpage">memcp(
1)
</em>
737 <em class=
"manpage">memflush(
1)
</em> <em class=
"manpage">memrm(
1)
</em> <em class=
"manpage">memslap(
1)
</em>
738 <em class=
"manpage">memstat(
1)
</em> <em class=
"manpage">memcached_fetch(
3)
</em>
739 <em class=
"manpage">memcached_replace(
3)
</em> <em class=
"manpage">memcached_server_list_free(
3)
</em>
740 <em class=
"manpage">libmemcached_examples(
3)
</em> <em class=
"manpage">memcached_clone(
3)
</em>
741 <em class=
"manpage">memcached_free(
3)
</em> <em class=
"manpage">memcached_server_add(
3)
</em>
742 <em class=
"manpage">memcached_server_push(
3)
</em> <em class=
"manpage">memcached_add(
3)
</em>
743 <em class=
"manpage">memcached_get(
3)
</em> <em class=
"manpage">memcached_server_count(
3)
</em>
744 <em class=
"manpage">memcached_create(
3)
</em> <em class=
"manpage">memcached_increment(
3)
</em>
745 <em class=
"manpage">memcached_server_list(
3)
</em> <em class=
"manpage">memcached_set(
3)
</em>
746 <em class=
"manpage">memcached_decrement(
3)
</em> <em class=
"manpage">memcached_mget(
3)
</em>
747 <em class=
"manpage">memcached_server_list_append(
3)
</em> <em class=
"manpage">memcached_strerror(
3)
</em>
748 <em class=
"manpage">memcached_delete(
3)
</em> <em class=
"manpage">memcached_quit(
3)
</em>
749 <em class=
"manpage">memcached_server_list_count(
3)
</em> <em class=
"manpage">memcached_verbosity(
3)
</em>
750 <em class=
"manpage">memcached_server_add_unix_socket(
3)
</em>
751 <em class=
"manpage">memcached_result_create(
3)
</em> <em class=
"manpage">memcached_result_free(
3)
</em>
752 <em class=
"manpage">memcached_result_key_value(
3)
</em>
753 <em class=
"manpage">memcached_result_key_length(
3)
</em>
754 <em class=
"manpage">memcached_result_value(
3)
</em> <em class=
"manpage">memcached_result_length(
3)
</em>
755 <em class=
"manpage">memcached_result_flags(
3)
</em> <em class=
"manpage">memcached_result_cas(
3)
</em>
756 <em class=
"manpage">memcached_result_st(
3)
</em> <em class=
"manpage">memcached_append(
3)
</em>
757 <em class=
"manpage">memcached_prepend(
3)
</em> <em class=
"manpage">memcached_fetch_result(
3)
</em>
758 <em class=
"manpage">memerror(
1)
</em> <em class=
"manpage">memcached_get_by_key(
3)
</em>
759 <em class=
"manpage">memcached_mget_by_key(
3)
</em> <em class=
"manpage">memcached_delete_by_key(
3)
</em>
760 <em class=
"manpage">memcached_fetch_execute(
3)
</em> <em class=
"manpage">memcached_callback_get(
3)
</em>
761 <em class=
"manpage">memcached_callback_set(
3)
</em> <em class=
"manpage">memcached_version(
3)
</em>
762 <em class=
"manpage">memcached_lib_version(
3)
</em> <em class=
"manpage">memcached_result_set_value(
3)
</em>
763 <em class=
"manpage">memcached_dump(
3)
</em> <em class=
"manpage">memdump(
1)
</em>
764 <em class=
"manpage">memcached_set_memory_allocators(
3)
</em>
765 <em class=
"manpage">memcached_get_memory_allocators(
3)
</em>
766 <em class=
"manpage">memcached_get_user_data(
3)
</em> <em class=
"manpage">memcached_set_user_data(
3)
</em></p>
776 <div class=
"rst-footer-buttons" role=
"navigation" aria-label=
"footer navigation">
778 <a href=
"versioning.html" class=
"btn btn-neutral float-right" title=
"Versioning" accesskey=
"n" rel=
"next">Next
<span class=
"fa fa-arrow-circle-right"></span></a>
781 <a href=
"index.html" class=
"btn btn-neutral float-left" title=
"Welcome to the libmemcached documentation" accesskey=
"p" rel=
"prev"><span class=
"fa fa-arrow-circle-left"></span> Previous
</a>
788 <div role=
"contentinfo">
790 © <a href=
"copyright.html">Copyright
</a>
794 Built with
<a href=
"http://sphinx-doc.org/">Sphinx
</a> using a
<a href=
"https://github.com/rtfd/sphinx_rtd_theme">theme
</a> provided by
<a href=
"https://readthedocs.org">Read the Docs
</a>.
807 <script type=
"text/javascript">
809 SphinxRtdTheme.Navigation.enable(true);