#include "libmemcached/memcached.h" #include "stdio.h" #include "unistd.h" #include int main() { const char *config_string= "--SERVER=localhost", *testkey = "testkey", *value = "foo"; const char *keys[] = { testkey }; size_t key_length[]= { strlen(testkey) }; memcached_return_t rc; memcached_result_st results_obj; memcached_st *memc= memcached(config_string, strlen(config_string)); memcached_behavior_set(memc, MEMCACHED_BEHAVIOR_BINARY_PROTOCOL, 1); rc = memcached_set(memc, testkey, strlen(testkey), value, strlen(value), (time_t)0, (uint32_t)0); printf("RESULT OF INITIAL SET = #%i %s\n", rc, memcached_strerror(memc, rc)); memcached_mget(memc, keys, key_length, 1); memcached_result_st *results = memcached_result_create(memc, &results_obj); results = memcached_fetch_result(memc, &results_obj, &rc); //printf("KEY %s, CAS = %" PRIu64 "\n", memcached_result_value(results), memcached_result_cas(results)); rc = memcached_cas(memc, testkey, strlen(testkey), "bar", strlen(value), (time_t)0, (uint32_t)0, 9999); printf("RESULT OF BAD CAS SET = #%i %s\n", rc, memcached_strerror(memc, rc)); rc = memcached_set(memc, "different", strlen("different"), value, strlen(value), (time_t)0, (uint32_t)0); printf("RESULT OF NEW SET = #%i %s\n", rc, memcached_strerror(memc, rc)); return 0; }