<!DOCTYPE html>
-<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
-<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
+<html class="writer-html5" lang="en" >
<head>
<meta charset="utf-8">
+ <link rel="stylesheet" href="_static/css/theme.css" type="text/css" />
+ <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
+
+
- <script type="text/javascript" src="_static/js/modernizr.min.js"></script>
+ <!--[if lt IE 9]>
+ <script src="_static/js/html5shiv.min.js"></script>
+ <![endif]-->
<script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
<script type="text/javascript" src="_static/js/theme.js"></script>
-
-
- <link rel="stylesheet" href="_static/css/theme.css" type="text/css" />
- <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<link rel="index" title="Index" href="genindex.html" />
<link rel="search" title="Search" href="search.html" />
<link rel="copyright" title="Copyright" href="copyright.html" />
- <a href="index.html" class="icon icon-home"> libmemcached
+ <a href="index.html" class="icon icon-home" alt="Documentation Home"> libmemcached
</div>
+
<div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
</div>
+
</div>
</nav>
<ul class="wy-breadcrumbs">
- <li><a href="index.html">Docs</a> »</li>
+ <li><a href="index.html" class="icon icon-home"></a> »</li>
<li>C/C++ Client Library for memcached</li>
</div>
<div class="section" id="description">
<h2>DESCRIPTION<a class="headerlink" href="#description" title="Permalink to this headline">¶</a></h2>
-<p>“Memcached is a high-performance, distributed memory object caching
-system, generic in nature, but intended for use in speeding up dynamic web
-applications by alleviating database load.”
-<a class="reference external" href="http://memcached.org/">http://memcached.org/</a></p>
-<p><code class="xref cpp cpp-any docutils literal notranslate"><span class="pre">libmemcached</span></code> is a small, thread-safe client library for the
-memcached protocol. The code has all been written to allow
-for both web and embedded usage. It handles the work behind routing
-individual keys to specific servers specified by the developer (and values are
-matched based on server order as supplied by the user). It implements
-a modular and consistent method of object distribution.</p>
+<p>"Memcached is a high-performance, distributed memory object caching system,
+generic in nature, but intended for use in speeding up dynamic web applications
+by alleviating database load." <a class="reference external" href="http://memcached.org/">http://memcached.org/</a></p>
+<p><code class="xref cpp cpp-any docutils literal notranslate"><span class="pre">libmemcached</span></code> is a small, thread-safe client library for the memcached
+protocol. The code has all been written to allow for both web and embedded
+usage. It handles the work behind routing individual keys to specific servers
+specified by the developer (and values are matched based on server order as
+supplied by the user). It implements a modular and consistent method of object
+distribution.</p>
<p>There are multiple implemented routing and hashing methods. See the
-<a class="reference internal" href="libmemcached/memcached_behavior.html#_CPPv422memcached_behavior_setP12memcached_st20memcached_behavior_t8uint64_t" title="memcached_behavior_set"><code class="xref cpp cpp-func docutils literal notranslate"><span class="pre">memcached_behavior_set()</span></code></a> manpage for more information.</p>
-<p>All operations are performed against a <a class="reference internal" href="libmemcached/memcached_create.html#_CPPv412memcached_st" title="memcached_st"><code class="xref cpp cpp-type docutils literal notranslate"><span class="pre">memcached_st</span></code></a> structure.
-These structures can either be dynamically allocated or statically
-allocated and then initialized by <a class="reference internal" href="libmemcached/memcached_create.html#_CPPv416memcached_createP12memcached_st" title="memcached_create"><code class="xref cpp cpp-func docutils literal notranslate"><span class="pre">memcached_create()</span></code></a>. Functions have
-been written in order to encapsulate the <a class="reference internal" href="libmemcached/memcached_create.html#_CPPv412memcached_st" title="memcached_st"><code class="xref cpp cpp-type docutils literal notranslate"><span class="pre">memcached_st</span></code></a>. It is not
-recommended that you operate directly against the structure.</p>
-<p>Nearly all functions return a <a class="reference internal" href="libmemcached/memcached_return_t.html#_CPPv418memcached_return_t" title="memcached_return_t"><code class="xref cpp cpp-type docutils literal notranslate"><span class="pre">memcached_return_t</span></code></a> value.
-This value can be translated to a printable string with
-<a class="reference internal" href="libmemcached/memcached_strerror.html#_CPPv418memcached_strerrorP12memcached_st18memcached_return_t" title="memcached_strerror"><code class="xref cpp cpp-type docutils literal notranslate"><span class="pre">memcached_strerror</span></code></a>.</p>
+<a class="reference internal" href="libmemcached/memcached_behavior.html#_CPPv422memcached_behavior_setP12memcached_st20memcached_behavior_t8uint64_t" title="memcached_behavior_set"><code class="xref cpp cpp-any docutils literal notranslate"><span class="pre">memcached_behavior_set()</span></code></a> manpage for more information.</p>
+<p>All operations are performed against a <a class="reference internal" href="libmemcached/memcached_create.html#_CPPv412memcached_st" title="memcached_st"><code class="xref cpp cpp-any docutils literal notranslate"><span class="pre">memcached_st</span></code></a> structure. These
+structures can either be dynamically allocated or statically allocated and then
+initialized by <a class="reference internal" href="libmemcached/memcached_create.html#_CPPv416memcached_createP12memcached_st" title="memcached_create"><code class="xref cpp cpp-any docutils literal notranslate"><span class="pre">memcached_create()</span></code></a>. Functions have been written in order to
+encapsulate the <a class="reference internal" href="libmemcached/memcached_create.html#_CPPv412memcached_st" title="memcached_st"><code class="xref cpp cpp-any docutils literal notranslate"><span class="pre">memcached_st</span></code></a>. It is not recommended that you operate directly
+against the structure.</p>
+<p>Nearly all functions return a <a class="reference internal" href="libmemcached/memcached_return_t.html#_CPPv418memcached_return_t" title="memcached_return_t"><code class="xref cpp cpp-any docutils literal notranslate"><span class="pre">memcached_return_t</span></code></a> value. This value can be
+translated to a printable string with <a class="reference internal" href="libmemcached/memcached_strerror.html#_CPPv418memcached_strerrorP12memcached_st18memcached_return_t" title="memcached_strerror"><code class="xref cpp cpp-any docutils literal notranslate"><span class="pre">memcached_strerror()</span></code></a>.</p>
<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>
applications can use the same memcached servers.</p>
<p>Some features of the library must be enabled through <a class="reference internal" href="libmemcached/memcached_behavior.html#_CPPv422memcached_behavior_setP12memcached_st20memcached_behavior_t8uint64_t" title="memcached_behavior_set"><code class="xref cpp cpp-any docutils literal notranslate"><span class="pre">memcached_behavior_set()</span></code></a>.</p>
</div>
-<div class="section" id="constants">
-<h2>CONSTANTS<a class="headerlink" href="#constants" title="Permalink to this headline">¶</a></h2>
-<p>A number of constants have been provided for in the library.</p>
-<p>See <a class="reference internal" href="libmemcached/constants.html"><span class="doc">libmemcached Constants and Defaults</span></a>.</p>
-</div>
<div class="section" id="threads-and-processes">
<h2>THREADS AND PROCESSES<a class="headerlink" href="#threads-and-processes" title="Permalink to this headline">¶</a></h2>
<p>No global variables are used in this library.</p>
-<p><a class="reference internal" href="libmemcached/memcached_create.html#_CPPv412memcached_st" title="memcached_st"><code class="xref cpp cpp-type docutils literal notranslate"><span class="pre">memcached_st</span></code></a> structures are thread-safe, but when using threads or
-forked processes it is important to keep one instance of <a class="reference internal" href="libmemcached/memcached_create.html#_CPPv412memcached_st" title="memcached_st"><code class="xref cpp cpp-type docutils literal notranslate"><span class="pre">memcached_st</span></code></a>
-per process or thread. Without creating your own locking structures you can not
-share a single <a class="reference internal" href="libmemcached/memcached_create.html#_CPPv412memcached_st" title="memcached_st"><code class="xref cpp cpp-type docutils literal notranslate"><span class="pre">memcached_st</span></code></a>. However, you can call
-<a class="reference internal" href="libmemcached/memcached_quit.html#_CPPv414memcached_quitP12memcached_st" title="memcached_quit"><code class="xref cpp cpp-func docutils literal notranslate"><span class="pre">memcached_quit()</span></code></a> on a <a class="reference internal" href="libmemcached/memcached_create.html#_CPPv412memcached_st" title="memcached_st"><code class="xref cpp cpp-type docutils literal notranslate"><span class="pre">memcached_st</span></code></a> and then use the resulting
-cloned structure.</p>
+<p><a class="reference internal" href="libmemcached/memcached_create.html#_CPPv412memcached_st" title="memcached_st"><code class="xref cpp cpp-any docutils literal notranslate"><span class="pre">memcached_st</span></code></a> structures are thread-safe, but when using threads or forked
+processes it is important to keep one instance of <a class="reference internal" href="libmemcached/memcached_create.html#_CPPv412memcached_st" title="memcached_st"><code class="xref cpp cpp-any docutils literal notranslate"><span class="pre">memcached_st</span></code></a> per process or
+thread. Without creating your own locking structures you can not share a single
+<a class="reference internal" href="libmemcached/memcached_create.html#_CPPv412memcached_st" title="memcached_st"><code class="xref cpp cpp-any docutils literal notranslate"><span class="pre">memcached_st</span></code></a>. However, you can call <a class="reference internal" href="libmemcached/memcached_quit.html#_CPPv414memcached_quitP12memcached_st" title="memcached_quit"><code class="xref cpp cpp-any docutils literal notranslate"><span class="pre">memcached_quit()</span></code></a> on a <a class="reference internal" href="libmemcached/memcached_create.html#_CPPv412memcached_st" title="memcached_st"><code class="xref cpp cpp-any docutils literal notranslate"><span class="pre">memcached_st</span></code></a> and
+then use the resulting cloned structure.</p>
</div>
<div class="section" id="systemtap">
<h2>SYSTEMTAP<a class="headerlink" href="#systemtap" title="Permalink to this headline">¶</a></h2>
<p><code class="xref cpp cpp-any docutils literal notranslate"><span class="pre">libmemcached</span></code> can be built to support Systemtap on Linux when enabled at
compile time.</p>
-<p>Please see <em class="manpage"><a class="manpage reference external" href="http://man7.org/linux/man-pages/man1/stap.1.html">stap(1)</a></em> and <em class="manpage"><a class="manpage reference external" href="http://man7.org/linux/man-pages/man1/dtrace.1.html">dtrace(1)</a></em> for more information
+<p>Please see <em class="manpage"><a class="manpage reference external" href="https://linux.die.net/man/1/stap">stap(1)</a></em> and <em class="manpage"><a class="manpage reference external" href="https://linux.die.net/man/1/dtrace">dtrace(1)</a></em> for more information
about Systemtap.</p>
</div>
<div class="section" id="client-programs">
<p><code class="xref cpp cpp-any docutils literal notranslate"><span class="pre">libmemcached</span></code> comes with a few useful client programs:</p>
<ul class="simple">
<li><p><a class="reference internal" href="bin/memaslap.html"><span class="doc">memaslap - Load testing and benchmarking a server</span></a></p></li>
-<li><p><a class="reference internal" href="bin/memcapable.html"><span class="doc">memcapable - Checking a Memcached server capabilities and compatibility</span></a></p></li>
-<li><p><a class="reference internal" href="bin/memcat.html"><span class="doc">memcat - “cat” data from a server</span></a></p></li>
-<li><p><a class="reference internal" href="bin/memcp.html"><span class="doc">memcp - Copy data to a server</span></a></p></li>
-<li><p><a class="reference internal" href="bin/memdump.html"><span class="doc">memdump - Dumping your server</span></a></p></li>
-<li><p><a class="reference internal" href="bin/memerror.html"><span class="doc">memerror - translate an error code to a string</span></a></p></li>
-<li><p><a class="reference internal" href="bin/memexist.html"><span class="doc">memexist - Check for the existence of a key</span></a></p></li>
-<li><p><a class="reference internal" href="bin/memflush.html"><span class="doc">memflush - flush all data from a server</span></a></p></li>
-<li><p><a class="reference internal" href="bin/memparse.html"><span class="doc">memparse - Parse an option string</span></a></p></li>
-<li><p><a class="reference internal" href="bin/memping.html"><span class="doc">memping - Test to see if a server is available.</span></a></p></li>
-<li><p><a class="reference internal" href="bin/memrm.html"><span class="doc">memrm - Remove data from a server</span></a></p></li>
-<li><p><a class="reference internal" href="bin/memslap.html"><span class="doc">memslap - Load testing and benchmarking a server</span></a></p></li>
-<li><p><a class="reference internal" href="bin/memstat.html"><span class="doc">memstat - Gather statistics from a server</span></a></p></li>
-<li><p><a class="reference internal" href="bin/memtouch.html"><span class="doc">memtouch - Touches a key.</span></a></p></li>
+<li><p><a class="reference internal" href="bin/memcapable.html"><span class="doc">memcapable</span></a></p></li>
+<li><p><a class="reference internal" href="bin/memcat.html"><span class="doc">memcat</span></a></p></li>
+<li><p><a class="reference internal" href="bin/memcp.html"><span class="doc">memcp</span></a></p></li>
+<li><p><a class="reference internal" href="bin/memdump.html"><span class="doc">memdump</span></a></p></li>
+<li><p><a class="reference internal" href="bin/memerror.html"><span class="doc">memerror</span></a></p></li>
+<li><p><a class="reference internal" href="bin/memexist.html"><span class="doc">memexist</span></a></p></li>
+<li><p><a class="reference internal" href="bin/memflush.html"><span class="doc">memflush</span></a></p></li>
+<li><p><a class="reference internal" href="bin/memparse.html"><span class="doc">memparse</span></a></p></li>
+<li><p><a class="reference internal" href="bin/memping.html"><span class="doc">memping</span></a></p></li>
+<li><p><a class="reference internal" href="bin/memrm.html"><span class="doc">memrm</span></a></p></li>
+<li><p><a class="reference internal" href="bin/memslap.html"><span class="doc">memslap</span></a></p></li>
+<li><p><a class="reference internal" href="bin/memstat.html"><span class="doc">memstat</span></a></p></li>
+<li><p><a class="reference internal" href="bin/memtouch.html"><span class="doc">memtouch</span></a></p></li>
</ul>
</div>
<div class="section" id="utility-libraries">
<div class="section" id="see-also">
<h2>SEE ALSO<a class="headerlink" href="#see-also" title="Permalink to this headline">¶</a></h2>
<ul class="simple">
-<li><p><em class="manpage"><a class="manpage reference external" href="http://man7.org/linux/man-pages/man1/memcached.1.html">memcached(1)</a></em></p></li>
+<li><p><em class="manpage"><a class="manpage reference external" href="https://linux.die.net/man/1/memcached">memcached(1)</a></em></p></li>
<li><p><a class="reference internal" href="libmemcached/configuration.html"><span class="doc">libmemcached Configuration</span></a></p></li>
<li><p><a class="reference internal" href="libmemcached/examples.html"><span class="doc">libmemcached Examples</span></a></p></li>
</ul>
<div role="contentinfo">
<p>
+
+
© <a href="copyright.html">Copyright</a>
</p>
</div>
- 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>.
+
+
+
+ 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>.
</footer>
</div>
-
<script type="text/javascript">
jQuery(function () {
SphinxRtdTheme.Navigation.enable(true);