logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

libmemcachedutil - libmemcached Documentation

Description

libmemcachedutil is a small and thread-safe client library that provides extra functionality built on top of libmemcached.

Name

libmemcachedutil - libmemcached Documentation Utility library for libmemcached

See Also

libmemcached(3)memcached_pool(3)memcached_pool_destroy(3)memcached_pool_pop(3)memcached_pool_push(3) 1.1 Mar 31, 2024 LIBMEMCACHEDUTIL(3)

Synopsis

#include<libmemcachedutil-1.0/util.h> Compile and link with -lmemcachedutil -lmemcached

Threads And Processes

Do not try to access an instance of memcached_st from multiple threads at the same time. If you want to access memcached from multiple threads you should either clone the memcached_st, or use the memcached pool implementation. See memcached_pool(). WorkingwithmemcachedpoolsSYNOPSIS#include<libmemcachedutil-1.0/pool.h> Compile and link with -lmemcachedutil -lmemcached typedefstructmemcached_pool_stmemcached_pool_stmemcached_pool_st*memcached_pool(constchar*option_string,size_toption_string_length)Parametersoption_string -- configuration string • option_string_length -- length of options_string without any trailing zero byte Returns allocated and initialized memcached_pool_st instance on success or nullptr on failure memcached_st*memcached_pool_destroy(memcached_pool_st*pool)Parameterspool -- initialized memcached_pool_st instance to free Returns pointer to the 'master' memcached_st instance by legacy memcached_st*memcached_pool_fetch(memcached_pool_st*pool,structtimespec*relative_time,memcached_return_t*rc) New in version 0.53: Synonym for memcached_pool_pop Parameterspool -- initialized memcached_pool_st instance • relative_time -- time to block thread and wait for a connection to become available when pool size is exceeded, unless nullptr • rc -- out pointer to memcached_return_tReturns pointer to an available memcached_st instance memcached_return_tmemcached_pool_release(memcached_pool_st*pool,memcached_st*mmc) New in version 0.53: Synonym for memcached_pool_push. Parameterspool -- initialized memcached_pool_st instance • mmc -- the memcached_st instance to return to the pool Returnsmemcached_return_t indicating success memcached_return_tmemcached_pool_behavior_set(memcached_pool_st*pool,memcached_behavior_tflag,uint64_tdata)Parameterspool -- initialized memcached_pool_st instance • flag -- the behavior to change • value -- the value to set for flagReturnsmemcached_return_t indicating success memcached_return_tmemcached_pool_behavior_get(memcached_pool_st*pool,memcached_behavior_tflag,uint64_t*value)Parameterspool -- initialized memcached_pool_st instance • flag -- the behavior to read • value -- out pointer to receive the set value of flagReturnsmemcached_return_t indicating success memcached_pool_st*memcached_pool_create(memcached_st*mmc,intinitial,intmax) Deprecated since version 0.46: Use memcached_pool()memcached_st*memcached_pool_pop(memcached_pool_st*pool,boolblock,memcached_return_t*rc) Deprecated since version 0.53: Use memcached_pool_fetch()memcached_return_tmemcached_pool_push(memcached_pool_st*pool,memcached_st*mmc) Deprecated since version 0.53: Use memcached_pool_release()DESCRIPTIONmemcached_pool() is used to create a connection pool of objects you may use to remove the overhead of using memcached_clone for short lived memcached_st objects. Please see libmemcachedConfiguration for details on the format of the configuration string. memcached_pool_destroy() is used to destroy the connection pool created with memcached_pool_create() and release all allocated resources. It will return the pointer to the memcached_st structure passed as an argument to memcached_pool_create(), and returns the ownership of the pointer to the caller when created with memcached_pool_create(), otherwise NULL is returned.. memcached_pool_fetch() is used to fetch a connection structure from the connection pool. The relative_time argument specifies if the function should block and wait for a connection structure to be available if we try to exceed the maximum size. You need to specify time in relative time. memcached_pool_release() is used to return a connection structure back to the pool. memcached_pool_behavior_get() and memcached_pool_behavior_set() is used to get/set behavior flags on all connections in the pool. Both memcached_pool_release() and memcached_pool_fetch() are thread safe. RETURNVALUEmemcached_pool_destroy() returns the pointer (and ownership) to the memcached_st structure used to create the pool. If connections are in use it returns NULL. memcached_pool_pop() returns a pointer to a memcached_st structure from the pool (or NULL if an allocation cannot be satisfied). memcached_pool_release() returns MEMCACHED_SUCCESS upon success. memcached_pool_behavior_get() and memcached_pool_behavior_get() return MEMCACHED_SUCCESS upon success. memcached_pool_fetch() may return MEMCACHED_TIMEOUT if a timeout occurs while waiting for a free memcached_st instance, MEMCACHED_NOTFOUND if no memcached_st instance was available, respectively. NOTE: If any method returns MEMCACHED_IN_PROGRESS then a lock on the pool could not be obtained. If any of the parameters passed to any of these functions is invalid, MEMCACHED_INVALID_ARGUMENTS will be returned. SEEALSOmemcached(1)libmemcached(3)libmemcached_configuration(3)memcached_strerror(3)

See Also