NAME¶
libgearman - Gearmand Documentation,
http://gearman.info/
SYNOPSIS¶
#include <libgearman/gearman.h>
Link -lgearman
DESCRIPTION¶
libgearman is a small, thread-safe client library for the gearman
protocol. The code has all been written with an eye to allow for both web and
embedded usage. It handles the work behind routing particular keys to specific
servers that you specify (and values are matched based on server order as
supplied by you). It implements both the
client and
worker
interfaces.
All operations are performed against either a client, ie
gearman_client_st or worker, ie
gearman_worker_st.
Client and Worker structures can either be dynamically allocated or statically
allocated. They must then b initialized by
gearman_client_create() or
gearman_worker_create().
Functions have been written in order to encapsulate all structures in the
library. It is recommended that you do not operate directly against the
structure.
Nearly all functions return a
gearman_return_t value. This value can be
translated to a printable string with
gearman_strerror().
gearman_client_st and
gearman_worker_st structures are
thread-safe, but each thread must contain its own structure (that is, if you
want to share these among threads you must provide your own locking). No
global variables are used in this library.
If you are working with GNU autotools you will want to add the following to your
configure.ac to properly include libgearman in your application.
PKG_CHECK_MODULES(DEPS, libgearman >= 0.8.0) AC_SUBST(DEPS_CFLAGS)
AC_SUBST(DEPS_LIBS)
Hope you enjoy it!
CONSTANTS¶
A number of constants have been provided for in the library.
The default port used by gearmand(3).
The default service used by gearmand(3).
- LIBGEARMAN_VERSION_STRING
String value of the libgearman version such as "0.20.4"
Hex value of the version number. "0x00048000" This can be used for
comparing versions based on number.
Largest number of characters that can be used for a unique value.
Largest number of characters that can will be used for a job handle. Please see
gearman_job_handle_t for additional information.
THREADS AND PROCESSES¶
When using threads or forked processes it is important to keep an instance of
gearman_client_st or
gearman_worker_st per process or thread.
Without creating your own locking structures you can not share a single
gearman_client_st or
gearman_worker_st.
HOME¶
To find out more information please check:
https://launchpad.net/libgearman
SEE ALSO¶
gearmand(8) libgearman_examples(3)
AUTHOR¶
Data Differential
http://www.datadifferential.com/
COPYRIGHT¶
2012, Data Differential,
http://www.datadifferential.com/