X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=docs%2Fman%2Flibmemcached_examples.3;h=1dd35a6ca6f474f8789c9c0ab4aed14d62ae0cd0;hb=941deb278c78654f9cfeda6f343c79e2f10b746a;hp=4dbb99d7e17bde9f1d2badae29dd7ce93c4c9f49;hpb=e668c212d13197abf5d8e2ddc7916057c94325b6;p=m6w6%2Flibmemcached diff --git a/docs/man/libmemcached_examples.3 b/docs/man/libmemcached_examples.3 index 4dbb99d7..8155a74b 100644 --- a/docs/man/libmemcached_examples.3 +++ b/docs/man/libmemcached_examples.3 @@ -1,4 +1,4 @@ -.TH "LIBMEMCACHED_EXAMPLES" "3" "April 08, 2011" "0.47" "libmemcached" +.TH "LIBMEMCACHED_EXAMPLES" "3" "April 17, 2012" "1.0.6" "libmemcached" .SH NAME libmemcached_examples \- libmemcached Documentation . @@ -37,73 +37,81 @@ Examples for libmemcached For full examples, test cases are found in tests/*.c in the main distribution. These are always up to date, and are used for each test run of the library. -.SH CREATING AND FREEING STRUCTURE +.SH CONNECTING TO SERVERS +.sp +.nf +.ft C +const char *config_string= "\-\-SERVER=host10.example.com \-\-SERVER=host11.example.com \-\-SERVER=host10.example.com" +memcached_st *memc= memcached(config_string, strlen(config_string); +{ +\&... +} + memcached_free(memc); +.ft P +.fi +.sp +In the above code you create a \fBmemcached_st\fP object with three server +by making use of \fBmemcached_create()\fP. +.SH CREATING A POOL OF SERVERS .sp .nf .ft C -memcached_st *memc; -memcached_return_t rc; -memc= memcached_create(NULL); -\&...do stuff... -memcached_free(memc); .ft P .fi .sp -The above code would create a connection and then free the connection when -finished. -.SH CONNECTING TO SERVERS +Creating a pool of Servers: .sp .nf .ft C -memcached_server_st *servers; -memcached_st *memc= memcached_create(NULL); -char servername[]= "0.example.com"; +const char *config_string= "\-\-SERVER=host10.example.com \-\-SERVER=host11.example.com \-\-SERVER=host10.example.com"; -servers= memcached_server_list_append(NULL, servername, 400, &rc); +memcached_pool_st* pool= memcached_pool(config_string, strlen(config_string)); -for (x= 0; x < 20; x++) -{ - char buffer[SMALL_STRING_LEN]; +memcached_return_t rc; - snprintf(buffer, SMALL_STRING_LEN, "%u.example.com", 400+x); - servers= memcached_server_list_append(servers, buffer, 401, &rc); -} -rc= memcached_server_push(memc, servers); -memcached_server_free(servers); -memcached_free(memc); +memcached_st *memc= memcached_pool_pop(pool, false, &rc); + +\&.... do work + +/* + Release the memc_ptr that was pulled from the pool +*/ +memcached_pool_push(pool, memc); + +/* + Destroy the pool. +*/ +memcached_pool_destroy(pool); .ft P .fi .sp -In the above code you create a \fBmemcached_st\fP object that you then feed in a -single host into. In the for loop you build a \fBmemcached_server_st\fPpointer that you then later feed via memcached_server_push() into the -\fBmemcached_st\fP structure. +In the above code you create a \fBmemcached_pool_st\fP object with three +server by making use of \fBmemcached_pool()\fP. .sp -You can reuse the \fBmemcached_server_st\fP object with multile \fBmemcached_st\fPstructures. +When \fBmemcached_pool_destroy()\fP all memory will be released that is associated +with the pool. .SH ADDING A VALUE TO THE SERVER .sp .nf .ft C -char *key= "foo"; -char *value; -size_t value_length= 8191; -unsigned int x; -value = (char*)malloc(value_length); -assert(value); +.ft P +.fi +.sp +Adding a value to the Server: +.sp +.nf +.ft C +char *key= "foo"; +char *value= "value"; -for (x= 0; x < value_length; x++) -value[x] = (char) (x % 127); +memcached_return_t rc= memcached_set(memc, key, strlen(key), value, value_length, (time_t)0, (uint32_t)0); -for (x= 0; x < 1; x++) +if (rc != MEMCACHED_SUCCESS) { - rc= memcached_set(memc, key, strlen(key), - value, value_length, - (time_t)0, (uint32_t)0); - assert(rc == MEMCACHED_SUCCESS); +\&... // handle failure } - -free(value); .ft P .fi .sp @@ -140,7 +148,7 @@ Notice that you freed values returned from memcached_fetch(). The define .SH HOME .sp To find out more information please check: -\fI\%https://launchpad.net/libmemcached\fP +\fI\%http://libmemcached.org/\fP .SH SEE ALSO .sp \fImemcached(1)\fP