Provided by: libmemcached-dev_1.1.4-1.1build3_amd64 bug

NAME

       memcached_pool_pop - libmemcached Documentation

SYNOPSIS

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

       typedef struct memcached_pool_st memcached_pool_st

       memcached_pool_st *memcached_pool(const char *option_string, size_t option_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)

              Parameters
                     pool -- 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,     struct    timespec
       *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_t

              Returns
                     pointer to an available memcached_st instance

       memcached_return_t memcached_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

              Returns
                     memcached_return_t indicating success

       memcached_return_t           memcached_pool_behavior_set(memcached_pool_st          *pool,
       memcached_behavior_t flag, uint64_t data)

              Parameterspool -- initialized memcached_pool_st instance

                     • flag -- the behavior to change

                     • value -- the value to set for flag

              Returns
                     memcached_return_t indicating success

       memcached_return_t          memcached_pool_behavior_get(memcached_pool_st           *pool,
       memcached_behavior_t flag, uint64_t *value)

              Parameterspool -- initialized memcached_pool_st instance

                     • flag -- the behavior to read

                     • value -- out pointer to receive the set value of flag

              Returns
                     memcached_return_t indicating success

       memcached_pool_st *memcached_pool_create(memcached_st *mmc, int initial, int max)
              Deprecated since version 0.46: Use memcached_pool()

       memcached_st  *memcached_pool_pop(memcached_pool_st  *pool, bool block, memcached_return_t
       *rc)
              Deprecated since version 0.53: Use memcached_pool_fetch()

       memcached_return_t memcached_pool_push(memcached_pool_st *pool, memcached_st *mmc)
              Deprecated since version 0.53: Use memcached_pool_release()

DESCRIPTION

       memcached_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
       libmemcached Configuration 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.

RETURN VALUE

       memcached_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.

SEE ALSO

       memcached(1) libmemcached(3) libmemcached_configuration(3) memcached_strerror(3)