MEMCACHED_CLONE(3)

NAME
memcached_clone - libmemcached Documentation

SYNOPSIS

#include <libmemcached/memcached.h>
    Compile and link with -lmemcached

typedef struct memcached_st memcached_st

memcached_st *memcached_create(memcached_st *ptr)

Parameters
    ptr -- pointer to user-allocated memcached_st struct or null pointer

Returns
    pointer to initialized memcached_st struct

void memcached_free(memcached_st *ptr)

Parameters
    ptr -- pointer to initialized memcached_st struct to destroy and possibly free

memcached_st *memcached_clone(memcached_st *destination, memcached_st *source)

Parameters

•   destination -- pointer to user-allocated memcached_st struct or null pointer

•   source -- pointer to initialized memcached_st struct to copy from

Returns
    pointer to newly initialized destination, copied from source

void memcached_servers_reset(memcached_st *ptr)

Parameters
    ptr -- pointer to initialized memcached_st struct

DESCRIPTION

memcached_create() is used to create a memcached_st structure that will then be used by other libmemcached functions to communicate with the server. You should either pass a statically declared memcached_st to memcached_create() or a NULL. If a NULL passed in then a structure is allocated for you.

Please note, when you write new application use memcached() <#_CPPv49memcachedPKc6size_t> over memcached_create().

memcached_clone() is similar to memcached_create() but it copies the defaults and list of servers from the source memcached_st pointer. If you pass a null as the argument for the source to clone, it is the same as a call to memcached_create(). If the destination argument is NULL a memcached_st will be allocated for you.

memcached_servers_reset() allows you to zero out the list of servers that the memcached_st has.

To clean up memory associated with a memcached_st structure you should pass it to memcached_free() when you are finished using it. memcached_free() is the only way to make sure all memory is deallocated when you finish using the structure.

You may wish to avoid using memcached_create() or memcached_clone() with a stack based allocation. The most common issues related to ABI safety involve heap allocated structures.

RETURN VALUE

memcached_create() returns a pointer to the memcached_st that was created (or initialized). On an allocation failure, it returns NULL.

memcached_clone() returns a pointer to the memcached_st that was created (or initialized). On an allocation failure, it returns NULL.

SEE ALSO

memcached(1) <https://linux.die.net/man/1/memcached> libmemcached(3) <https://linux.die.net/man/3/libmemcached>