Go to main content

man pages section 3: Library Interfaces and Headers

Exit Print View

Updated: Wednesday, July 27, 2022
 
 

memcached_callback_set (3libmemcached)

Name

memcached_callback_set - libmemcached Documentation Get and set a callback

Synopsis

#include <libmemcached/memcached.h>

memcached_callback_t

memcached_return_t            memcached_callback_set(memcached_st *ptr,
memcached_callback_t flag, const void *data)

void            *             memcached_callback_get(memcached_st *ptr,
memcached_callback_t flag, memcached_return_t *error)

Compile and link with -lmemcached

Description

libmemcached                             MEMCACHED_CALLBACK_SET(3libmemcached)



NAME
       memcached_callback_set - libmemcached Documentation

       Get and set a callback

SYNOPSIS
       #include <libmemcached/memcached.h>

       memcached_callback_t

       memcached_return_t            memcached_callback_set(memcached_st *ptr,
       memcached_callback_t flag, const void *data)

       void            *             memcached_callback_get(memcached_st *ptr,
       memcached_callback_t flag, memcached_return_t *error)

       Compile and link with -lmemcached

DESCRIPTION
       libmemcached(3)  can  have  callbacks  set  key execution points. These
       either provide function calls at points in the code, or return pointers
       to structures for particular usages.

       memcached_callback_get()  takes  a callback flag and returns the struc-
       ture or function set by memcached_callback_set().

       memcached_callback_set() changes the function/structure assigned  by  a
       callback flag. No connections are reset.

       You  can  use MEMCACHED_CALLBACK_USER_DATA to provide custom context if
       required for any of the callbacks.

       MEMCACHED_CALLBACK_CLEANUP_FUNCTION

       When memcached_delete() is called this function will be excuted. At the
       point of its execution all connections are closed.

       MEMCACHED_CALLBACK_CLONE_FUNCTION

       When  memcached_delete()  is  called this function will be excuted.  At
       the point of its execution all connections are closed.

       MEMCACHED_CALLBACK_PREFIX_KEY
              See MEMCACHED_CALLBACK_NAMESPACE

       MEMCACHED_CALLBACK_NAMESPACE

       You can set a value which will be used to  create  a  domain  for  your
       keys.   The value specified here will be prefixed to each of your keys.
       The value can not be greater then MEMCACHED_PREFIX_KEY_MAX_SIZE - 1 and
       will reduce MEMCACHED_MAX_KEY by the value of your key.

       The  prefix key is only applied to the primary key, not the master key.
       MEMCACHED_FAILURE will be returned if no key is set. In the case  of  a
       key which is too long, MEMCACHED_BAD_KEY_PROVIDED will be returned.

       If  you  set  a  value with the value being NULL then the prefix key is
       disabled.

       MEMCACHED_CALLBACK_USER_DATA

       This allows you to store a pointer to a specifc piece of data. This can
       be  retrieved  from inside of memcached_fetch_execute(). Cloning a mem-
       cached_st will copy the pointer to the clone.

       MEMCACHED_CALLBACK_MALLOC_FUNCTION

       Deprecated since  version  <0.32:  Use  memcached_set_memory_allocators
       instead.

       MEMCACHED_CALLBACK_REALLOC_FUNCTION

       Deprecated  since  version  <0.32:  Use memcached_set_memory_allocators
       instead.

       MEMCACHED_CALLBACK_FREE_FUNCTION

       Deprecated since  version  <0.32:  Use  memcached_set_memory_allocators
       instead.

       MEMCACHED_CALLBACK_GET_FAILURE

       This function implements the read through cache behavior. On failure of
       retrieval this callback will be called.

       You are responsible for populating the  result  object  provided.  This
       result  object  will  then  be stored in the server and returned to the
       calling process.

       You must clone the memcached_st in order to make use of it.  The  value
       will   be   stored   only  if  you  return  MEMCACHED_SUCCESS  or  MEM-
       CACHED_BUFFERED. Returning MEMCACHED_BUFFERED will cause the object  to
       be  buffered  and  not sent immediatly (if this is the default behavior
       based on your connection setup this will happen automatically).

       The prototype for this is:

       memcached_return_t  (*memcached_trigger_key)(memcached_st  *ptr,   char
       *key, size_t key_length, memcached_result_st *result);

       MEMCACHED_CALLBACK_DELETE_TRIGGER

       This  function  implements a trigger upon successful deletion of a key.
       The memcached_st structure will need to be cloned in order to make  use
       of it.

       The prototype for this is:

       typedef memcached_return_t (*memcached_trigger_delete_key)(memcached_st
       *ptr, char *key, size_t key_length);

RETURN
       memcached_callback_get() return the function or structure that was pro-
       vided.  Upon  error,  nothing  is  set,  null is returned, and the mem-
       cached_return_t argument is set to MEMCACHED_FAILURE.

       memcached_callback_set() returns MEMCACHED_SUCCESS upon successful set-
       ting, otherwise MEMCACHED_FAILURE on error.

HOME
       To find out more information please check: http://libmemcached.org/

AUTHOR
       Brian Aker, <brian@tangent.org>


ATTRIBUTES
       See attributes(7) for descriptions of the following attributes:


       +---------------+----------------------+
       |ATTRIBUTE TYPE |   ATTRIBUTE VALUE    |
       +---------------+----------------------+
       |Availability   | library/libmemcached |
       +---------------+----------------------+
       |Stability      | Uncommitted          |
       +---------------+----------------------+

SEE ALSO
       memcached(1) libmemcached(3) memcached_strerror(3)

AUTHOR
       Brian Aker

COPYRIGHT
       2011-2013, Brian Aker DataDifferential, http://datadifferential.com/



NOTES
       Source  code  for open source software components in Oracle Solaris can
       be found at https://www.oracle.com/downloads/opensource/solaris-source-
       code-downloads.html.

       This     software     was    built    from    source    available    at
       https://github.com/oracle/solaris-userland.   The  original   community
       source     was     downloaded    from     https://launchpad.net/libmem-
       cached/1.0/1.0.18/+download/libmemcached-1.0.18.tar.gz.

       Further information about this software can be found on the open source
       community website at http://libmemcached.org/libMemcached.html.



1.0.18                         February 09, 2014
                                         MEMCACHED_CALLBACK_SET(3libmemcached)