Generating hash values directly¶
Hash a key value
SYNOPSIS¶
- #include <libmemcached/memcached.h>
- Compile and link with -lmemcachedutil -lmemcached
-
uint32_t
memcached_generate_hash_value
(const char *key, size_t key_length, memcached_hash_t hash_algorithm)¶ Parameters: - key -- the key to generate a hash of
- key_length -- the length of the
key
without any terminating zero - hash_algorithm --
memcached_hash_t
, the algorithm to use
Returns: a 32 bit hash value
-
uint32_t
memcached_generate_hash
(memcached_st *ptr, const char *key, size_t key_length)¶ Parameters: - ptr -- pointer to an initialized
memcached_st
struct - key -- the key to generate a hash of
- key_length -- the length of the
key
without any terminating zero
Returns: a 32 bit hash value
- ptr -- pointer to an initialized
-
enum memcached_hash_t
memcached_hash_t
¶
-
enum
memcached_hash_t
¶ -
enumerator
MEMCACHED_HASH_DEFAULT
¶
-
enumerator
MEMCACHED_HASH_MD5
¶
-
enumerator
MEMCACHED_HASH_CRC
¶
-
enumerator
MEMCACHED_HASH_FNV1_64
¶
-
enumerator
MEMCACHED_HASH_FNV1A_64
¶
-
enumerator
MEMCACHED_HASH_FNV1_32
¶
-
enumerator
MEMCACHED_HASH_FNV1A_32
¶
-
enumerator
MEMCACHED_HASH_HSIEH
¶
-
enumerator
MEMCACHED_HASH_MURMUR
¶
-
enumerator
MEMCACHED_HASH_JENKINS
¶
-
enumerator
MEMCACHED_HASH_MURMUR3
¶
-
enumerator
MEMCACHED_HASH_CUSTOM
¶
-
enumerator
DESCRIPTION¶
memcached_generate_hash_value()
allows you to hash a key using one of
the hash functions defined in the library. This method is provided for
the convenience of higher-level language bindings and is not necessary
for normal memcache operations.
Support for MEMCACHED_HASH_HSIEH
is a compile time option that is
disabled by default. To enable tests for this hashing algorithm,
configure and build libmemcached with the Hsieh hash enabled.
memcached_generate_hash()
takes a memcached_st
structure
and produces the hash value that would have been generated based on the
defaults of memcached_st
.
As of version 0.36 all hash methods have been placed into the library libhashkit(3) which is linked with libmemcached(3). For more information please see its documentation.
RETURN VALUE¶
A 32-bit integer which is the result of hashing the given key. For 64-bit hash algorithms, only the least-significant 32 bits are returned.