MEMCACHED_POOL_POP(3)
πΈ MEMCACHED_POOL_POP πΈ
hi bestie!! π you just opened MEMCACHED_POOL_POP(3) from libmemcached-awesome and honestly? you're about to have main character energy in C. this is the pool page. connection pools. the whole vibe. let's go π¦
β¨ NAME β¨
memcached_pool_pop β libmemcached Documentation
π SYNOPSIS π
okay so first, you gotta pull in the header and link the right stuff, no cap:
#include <libmemcachedutil-1.0/pool.h>
compile and link with -lmemcachedutil -lmemcached π
and here's the type you're gonna be passing around like a friendship bracelet:
typedef struct memcached_pool_st memcached_pool_st
π«Ά memcached_pool_st *memcached_pool(const char *option_string, size_t option_string_length)
Parameters
option_stringβ configuration stringoption_string_lengthβ length of options_string without any trailing zero byte
Returns β a freshly allocated and initialized memcached_pool_st instance on success, or nullptr on failure π
π«Ά memcached_st *memcached_pool_destroy(memcached_pool_st *pool)
Parameters
poolβ initializedmemcached_pool_stinstance 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)
Added in version 0.53: Synonym for memcached_pool_pop β¨
Parameters
poolβ initializedmemcached_pool_stinstancerelative_timeβ time to block thread and wait for a connection to become available when pool size is exceeded, unlessnullptrrcβ out pointer tomemcached_return_t
Returns β pointer to an available memcached_st instance
π«Ά memcached_return_t memcached_pool_release(memcached_pool_st *pool, memcached_st *mmc)
Added in version 0.53: Synonym for memcached_pool_push. π₯
Parameters
poolβ initializedmemcached_pool_stinstancemmcβ thememcached_stinstance 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)
Parameters
poolβ initializedmemcached_pool_stinstanceflagβ the behavior to changevalueβ the value to set forflag
Returns β memcached_return_t indicating success
π«Ά memcached_return_t memcached_pool_behavior_get(memcached_pool_st *pool, memcached_behavior_t flag, uint64_t *value)
Parameters
poolβ initializedmemcached_pool_stinstanceflagβ the behavior to readvalueβ out pointer to receive the set value offlag
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() β she's the moment now, this one is retired bestie π
π 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 thememcached_ststructure used to create the pool. If connections are in use it returnsNULL. πmemcached_pool_pop()returns a pointer to amemcached_ststructure from the pool (orNULLif an allocation cannot be satisfied).memcached_pool_release()returnsMEMCACHED_SUCCESSupon success. πmemcached_pool_behavior_get()andmemcached_pool_behavior_get()returnMEMCACHED_SUCCESSupon success.memcached_pool_fetch()may returnMEMCACHED_TIMEOUTif a timeout occurs while waiting for a freememcached_stinstance,MEMCACHED_NOTFOUNDif nomemcached_stinstance 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)
and that's the whole page bestie, you ate π
β¨ this was version 1.1, dated Jul 24, 2025, and it's the MEMCACHED_POOL_POP(3) page forever and always π«Άπ go forth and pool responsibly, ily, bye!! πΈ
π¦ where this page comes from
- fedora 43: libmemcached-awesome-devel 1.1.4-7.fc43 Β· BSD-3-Clause
- fedora 43: libmemcached-awesome-devel 1.1.4-7.fc43 Β· BSD-3-Clause
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms