Deploy to GitHub pages
[m6w6/libmemcached] / libmemcached.html
index 2755ff03c933196f5675343522dc2a0f62d63439..edf38f08ec69138ded7368947687933066318b05 100644 (file)
@@ -8,7 +8,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>C/C++ Client Library for memcached &mdash; libmemcached 1.0.99 documentation</title>
+  <title>C/C++ Client Library for memcached &mdash; libmemcached 1.1.0 documentation</title>
   
 
   
   
     
       <script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
-        <script src="_static/jquery.js"></script>
-        <script src="_static/underscore.js"></script>
-        <script src="_static/doctools.js"></script>
-        <script src="_static/language_data.js"></script>
+        <script type="text/javascript" src="_static/jquery.js"></script>
+        <script type="text/javascript" src="_static/underscore.js"></script>
+        <script type="text/javascript" src="_static/doctools.js"></script>
+        <script type="text/javascript" src="_static/language_data.js"></script>
     
     <script type="text/javascript" src="_static/js/theme.js"></script>
 
@@ -61,7 +61,7 @@
             
             
               <div class="version">
-                1.0
+                1.1
               </div>
             
           
               
             
             
-              <p class="caption"><span class="caption-text">libmemcached</span></p>
-<ul class="current">
+              <ul class="current">
 <li class="toctree-l1 current"><a class="current reference internal" href="#">Introduction</a></li>
-<li class="toctree-l1"><a class="reference internal" href="libmemcached/index.html">libmemcached API</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="libmemcached/index_basics.html">Basics</a></li>
-<li class="toctree-l2"><a class="reference internal" href="libmemcached/index_data.html">Working with Data</a></li>
-<li class="toctree-l2"><a class="reference internal" href="libmemcached/index_errors.html">Messages and Errors</a></li>
-<li class="toctree-l2"><a class="reference internal" href="libmemcached/index_advanced.html">Advanced Topics</a></li>
-<li class="toctree-l2"><a class="reference internal" href="libmemcached/index_deprecated.html">Deprecated Functionality</a></li>
+<li class="toctree-l1"><a class="reference internal" href="libmemcached/index.html">libmemcached API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="libmemcachedutil/index.html">libmemcachedutil API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="libhashkit/index.html">libhashkit API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="bin/index.html">Client Applications</a></li>
+<li class="toctree-l1"><a class="reference internal" href="libmemcached/index_misc.html">Miscellaneous</a></li>
 </ul>
-</li>
-<li class="toctree-l1"><a class="reference internal" href="libmemcached/index_misc.html">Misc</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="libmemcached/configuration.html">Configuration</a></li>
-<li class="toctree-l2"><a class="reference internal" href="libmemcached/constants.html">Constants</a></li>
-<li class="toctree-l2"><a class="reference internal" href="libmemcached/examples.html">Examples</a></li>
-<li class="toctree-l2"><a class="reference internal" href="libmemcached/versioning.html">Versioning</a></li>
-</ul>
-</li>
-</ul>
-<p class="caption"><span class="caption-text">libmemcachedutil</span></p>
 <ul>
-<li class="toctree-l1"><a class="reference internal" href="libmemcachedutil.html">Introduction</a></li>
-<li class="toctree-l1"><a class="reference internal" href="libmemcachedutil/index.html">libmemcachedutil API</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="libmemcachedutil/memcached_pool.html">Working with memcached pools</a></li>
-</ul>
-</li>
-</ul>
-<p class="caption"><span class="caption-text">libhashkit</span></p>
-<ul>
-<li class="toctree-l1"><a class="reference internal" href="libhashkit.html">Introduction</a></li>
-<li class="toctree-l1"><a class="reference internal" href="libhashkit/index.html">libhashkit API</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="libhashkit/hashkit_create.html">Creating a hashkit structure</a></li>
-<li class="toctree-l2"><a class="reference internal" href="libhashkit/hashkit_function.html">Set Hash Function</a></li>
-<li class="toctree-l2"><a class="reference internal" href="libhashkit/hashkit_functions.html">Available Hashes</a></li>
-<li class="toctree-l2"><a class="reference internal" href="libhashkit/hashkit_value.html">Generate hash value</a></li>
-</ul>
-</li>
-</ul>
-<p class="caption"><span class="caption-text">Client Applications</span></p>
-<ul>
-<li class="toctree-l1"><a class="reference internal" href="bin/index.html">Client Applications</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="bin/memcapable.html">memcapable - Checking a Memcached server capabilities and compatibility</a></li>
-<li class="toctree-l2"><a class="reference internal" href="bin/memcat.html">memcat - “cat” data from a server</a></li>
-<li class="toctree-l2"><a class="reference internal" href="bin/memcp.html">memcp - Copy data to a server</a></li>
-<li class="toctree-l2"><a class="reference internal" href="bin/memdump.html">memdump - Dumping your server</a></li>
-<li class="toctree-l2"><a class="reference internal" href="bin/memerror.html">memerror - translate an error code to a string</a></li>
-<li class="toctree-l2"><a class="reference internal" href="bin/memflush.html">memflush - flush all data from a server</a></li>
-<li class="toctree-l2"><a class="reference internal" href="bin/memrm.html">memrm - Remove data from a server</a></li>
-<li class="toctree-l2"><a class="reference internal" href="bin/memslap.html">memslap - Load testing  and benchmarking a server</a></li>
-<li class="toctree-l2"><a class="reference internal" href="bin/memaslap.html">memaslap - Load testing  and benchmarking a server</a></li>
-<li class="toctree-l2"><a class="reference internal" href="bin/memstat.html">memstat - Gather statistics from a server</a></li>
-<li class="toctree-l2"><a class="reference internal" href="bin/memexist.html">memexist - Check for the existence of a key</a></li>
-<li class="toctree-l2"><a class="reference internal" href="bin/memparse.html">memparse - Parse an option string</a></li>
-<li class="toctree-l2"><a class="reference internal" href="bin/memping.html">memping - Test to see if a server is available.</a></li>
-<li class="toctree-l2"><a class="reference internal" href="bin/memtouch.html">memtouch - Touches a key.</a></li>
-</ul>
-</li>
+<li class="toctree-l1"><a class="reference internal" href="changelogs.html">Change Logs</a></li>
+<li class="toctree-l1"><a class="reference internal" href="copyright.html">Copyright</a></li>
 </ul>
 
             
       <li class="wy-breadcrumbs-aside">
         
             
+            
+              <a href="https://github.com/m6w6/libmemcached/blob/v1.x/docs/source/libmemcached.rst" class="fa fa-github"> Edit on GitHub</a>
+            
+          
         
       </li>
     
 <h1>C/C++ Client Library for memcached<a class="headerlink" href="#c-c-client-library-for-memcached" title="Permalink to this headline">¶</a></h1>
 <div class="section" id="synopsis">
 <h2>SYNOPSIS<a class="headerlink" href="#synopsis" title="Permalink to this headline">¶</a></h2>
-<dl class="simple">
-<dt>#include &lt;libmemcached/memcached.h&gt;</dt><dd><p>Compile and link with -lmemcached</p>
-</dd>
+<dl class="docutils">
+<dt>#include &lt;libmemcached/memcached.h&gt;</dt>
+<dd>Compile and link with -lmemcached</dd>
 </dl>
 <hr class="docutils" />
 <p><code class="xref cpp cpp-any docutils literal notranslate"><span class="pre">libmemcached</span></code> is an open source C/C++ client library and tools for the
@@ -219,37 +177,35 @@ memory usage, thread safe, and provide full access to server side methods.</p>
 <p><code class="xref cpp cpp-any docutils literal notranslate"><span class="pre">libmemcached</span></code> was designed to provide the greatest number of options to use
 Memcached. Some of the features provided:</p>
 <ol class="arabic simple">
-<li><p>Asynchronous and Synchronous Transport Support.</p></li>
-<li><p>Consistent Hashing and Distribution.</p></li>
-<li><p>Tunable Hashing algorithm to match keys.</p></li>
-<li><p>Access to large object support.</p></li>
-<li><p>Local replication.</p></li>
-<li><p>A complete reference guide and documentation to the API.</p></li>
-<li><p>Tools to Manage your Memcached networks.</p></li>
+<li>Asynchronous and Synchronous Transport Support.</li>
+<li>Consistent Hashing and Distribution.</li>
+<li>Tunable Hashing algorithm to match keys.</li>
+<li>Access to large object support.</li>
+<li>Local replication.</li>
+<li>A complete reference guide and documentation to the API.</li>
+<li>Tools to Manage your Memcached networks.</li>
 </ol>
 </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>&quot;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.&quot; <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>
@@ -258,61 +214,55 @@ possibly to reliably both push data to a server and retrieve data from a server.
 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">
 <h2>CLIENT PROGRAMS<a class="headerlink" href="#client-programs" title="Permalink to this headline">¶</a></h2>
 <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><a class="reference internal" href="bin/memaslap.html"><span class="doc">memaslap - Load testing  and benchmarking a server</span></a></li>
+<li><a class="reference internal" href="bin/memcapable.html"><span class="doc">memcapable</span></a></li>
+<li><a class="reference internal" href="bin/memcat.html"><span class="doc">memcat</span></a></li>
+<li><a class="reference internal" href="bin/memcp.html"><span class="doc">memcp</span></a></li>
+<li><a class="reference internal" href="bin/memdump.html"><span class="doc">memdump</span></a></li>
+<li><a class="reference internal" href="bin/memerror.html"><span class="doc">memerror</span></a></li>
+<li><a class="reference internal" href="bin/memexist.html"><span class="doc">memexist</span></a></li>
+<li><a class="reference internal" href="bin/memflush.html"><span class="doc">memflush</span></a></li>
+<li><a class="reference internal" href="bin/memparse.html"><span class="doc">memparse</span></a></li>
+<li><a class="reference internal" href="bin/memping.html"><span class="doc">memping</span></a></li>
+<li><a class="reference internal" href="bin/memrm.html"><span class="doc">memrm</span></a></li>
+<li><a class="reference internal" href="bin/memslap.html"><span class="doc">memslap</span></a></li>
+<li><a class="reference internal" href="bin/memstat.html"><span class="doc">memstat</span></a></li>
+<li><a class="reference internal" href="bin/memtouch.html"><span class="doc">memtouch</span></a></li>
 </ul>
 </div>
 <div class="section" id="utility-libraries">
 <h2>UTILITY LIBRARIES<a class="headerlink" href="#utility-libraries" title="Permalink to this headline">¶</a></h2>
 <ul class="simple">
-<li><p><a class="reference internal" href="libhashkit.html"><span class="doc">libhashkit - C/C++ hashing library</span></a></p></li>
-<li><p><a class="reference internal" href="libmemcachedutil.html"><span class="doc">libmemcachedutil - C/C++ utilities extending libmemcached</span></a></p></li>
+<li><a class="reference internal" href="libhashkit/index.html"><span class="doc">libhashkit - C/C++ hashing library</span></a></li>
+<li><a class="reference internal" href="libmemcachedutil/index.html"><span class="doc">libmemcachedutil - C/C++ utilities extending libmemcached</span></a></li>
 </ul>
 </div>
 <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><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>
+<li><em class="manpage"><a class="manpage reference external" href="https://linux.die.net/man/1/memcached">memcached(1)</a></em></li>
+<li><a class="reference internal" href="libmemcached/configuration.html"><span class="doc">libmemcached Configuration</span></a></li>
+<li><a class="reference internal" href="libmemcached/examples.html"><span class="doc">libmemcached Examples</span></a></li>
 </ul>
 </div>
 </div>