5 Examples for libmemcached
12 For full examples, test cases are found in tests/\*.c in the main
13 distribution. These are always up to date, and are used for each test run of
24 const char *config_string= "--SERVER=host10.example.com --SERVER=host11.example.com --SERVER=host10.example.com"
25 memcached_st *memc= memcached(config_string, strlen(config_string);
32 In the above code you create a :c:type:`memcached_st` object with three server
33 by making use of :c:func:`memcached_create_with_options()`.
36 --------------------------
37 Creating a pool of servers
38 --------------------------
44 Creating a pool of Servers::
46 const char *config_string= "--SERVER=host10.example.com --SERVER=host11.example.com --SERVER=host10.example.com";
48 memcached_pool_st* pool= memcached_pool(config_string, strlen(config_string));
50 memcached_return_t rc;
52 memcached_st *memc= memcached_pool_pop(pool, false, &rc);
57 Release the memc_ptr that was pulled from the pool
59 memcached_pool_push(pool, memc);
64 memcached_pool_destroy(pool);
68 In the above code you create a :c:type:`memcached_pool_st` object with three
69 server by making use of :c:func:`memcached_pool()`.
71 When :c:func:`memcached_pool_destroy()` all memory will be released that is associated
75 ----------------------------
76 Adding a value to the server
77 ----------------------------
83 Adding a value to the Server::
88 memcached_return_t rc= memcached_set(memc, key, strlen(key), value, value_length, (time_t)0, (uint32_t)0);
90 if (rc != MEMCACHED_SUCCESS)
96 It is best practice to always look at the return value of any operation.
99 ------------------------
100 Fetching multiple values
101 ------------------------
107 memcached_return_t rc;
108 char *keys[]= {"fudge", "son", "food"};
109 size_t key_length[]= {5, 3, 4};
113 char return_key[MEMCACHED_MAX_KEY];
114 size_t return_key_length;
116 size_t return_value_length;
118 rc= memcached_mget(memc, keys, key_length, 3);
121 while ((return_value= memcached_fetch(memc, return_key, &return_key_length,
122 &return_value_length, &flags, &rc)))
129 Notice that you freed values returned from memcached_fetch(). The define
130 :c:type:`MEMCACHED_MAX_KEY` is provided for usage.
139 To find out more information please check:
140 `http://libmemcached.org/ <http://libmemcached.org/>`_
148 :manpage:`memcached(1)`