Creating background tasks¶
SYNOPSIS¶
#include <libgearman/gearman.h>
-
gearman_task_st *gearman_client_add_task_background(gearman_client_st *client, gearman_task_st *task, void *context, const char *function_name, const char *unique, const void *workload, size_t workload_size, gearman_return_t *ret_ptr)¶
-
gearman_task_st *gearman_client_add_task_high_background(gearman_client_st *client, gearman_task_st *task, void *context, const char *function_name, const char *unique, const void *workload, size_t workload_size, gearman_return_t *ret_ptr)¶
-
gearman_task_st *gearman_client_add_task_low_background(gearman_client_st *client, gearman_task_st *task, void *context, const char *function_name, const char *unique, const void *workload, size_t workload_size, gearman_return_t *ret_ptr)¶
Link with -lgearman
DESCRIPTION¶
gearman_client_add_task_background()
creates a background task and adds it ito the given gearman_client_st
. Execution of the task does not begin until gearman_client_run_tasks()
is called.
If the unique value is not set, then a unique will be assigned.
gearman_client_add_task_high_background()
and gearman_client_add_task_low_background()
are
identical to gearman_client_do()
, only they set the priority to
either high or low.
Warning
You may wish to avoid using gearman_client_add_task_background()
with a stack based allocated
gearman_task_st
. The most common issues related to ABI safety involve stack allocated structures. If you use a stack based
gearman_task_st
you must free it with gearman_task_free()
.
RETURN VALUE¶
The gearman_task_st
is created and a pointer to it is returned. On error NULL is returned and ret_ptr is set with a gearman_return_t
.
HOME¶
To find out more information please check: http://gearman.info/
See also
gearmand(8) libgearman(3) gearman_task_st