2011-11-16 9 views
0

私は次の簡単なmemcacheのコード:::::memcache_get()セグメンテーションフォールトに与える

memcached_return * RC = NULLを持っています。

char * sur = "SURBHI";

memcached_set(cacheClient、 "SB"、strlen( "SB")、sur、strlen(sur)、(time_t)0、(uint32_t)0);

char * value1;

memcached_get(cacheClient、 "SB"、strlen( "SB")、6、(uint32_t)0、rc);

memcache_getを呼び出すと、セグメント化エラーが発生します。 デバッガは、以下を得た:memcached_get_by_keyで

0 0x00007ffff79c434c()memcached_getで/usr/lib/libmemcached.so.5

1 0x00007ffff79c454fから()/usr/lib/libmemcached.so.5

から

誰も似たような問題に直面したのですか?

答えて

1

memcached_getの最後の3つのパラメータは、値、長さ、エラーコードなどの情報を得るためのポインタにする必要があります。下記を参照:

char *key = "key"; 
size_t value_length; 
memcached_return_t ret; 
uint32_t flags; 
char *value = memcached_get(memc, key, strlen(key), &value_length, &flags, &ret); 

if (ret == MEMCACHED_SUCCESS) { 
    // ok 
} else { 
    // error 
} 
関連する問題