Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

gearman_task_attr_init(3) [debian man page]

GEARMAN_TASK_ATTR_INIT(3)					     Gearmand						 GEARMAN_TASK_ATTR_INIT(3)

NAME
gearman_task_attr_init - Gearmand Documentation, http://gearman.info/ SYNOPSIS
#include <libgearman/gearman.h> gearman_work_t gearman_job_priority_t gearman_work_t gearman_work(gearman_job_priority_t priority) gearman_work_t gearman_work_epoch(time_t epoch, gearman_job_priority_t priority) gearman_work_t gearman_work_background(gearman_job_priority_t priority) Compile and link with -lgearman DESCRIPTION
gearman_work_t describe work for gearman_execute(). gearman_work() creates a gearman_work_t with a priority. gearman_work_epoch() creates a gearman_work_t which tells gearman_execute() to execute the workload at the time specified by epoch. gearman_work_background() creates a gearman_work_t which tells gearman_execute() to execute the workload as a background job. SEE ALSO
gearmand(8) libgearman(3) gearman_execute() AUTHOR
Data Differential http://www.datadifferential.com/ COPYRIGHT
2012, Data Differential, http://www.datadifferential.com/ 0.33 May 04, 2012 GEARMAN_TASK_ATTR_INIT(3)

Check Out this Related Man Page

GEARMAN_EXECUTE(3)						     Gearmand							GEARMAN_EXECUTE(3)

NAME
gearman_execute - Gearmand Documentation, http://gearman.info/ SYNOPSIS
#include <libgearman/gearman.h> gearman_task_st *gearman_execute(gearman_client_st *client, const char *function_name, size_t function_name_length, const char *unique, size_t unique_length, gearman_work_t *workload, gearman_argument_t *arguments, void *context) gearman_task_st *gearman_execute_by_partition(gearman_client_st *client, const char *partition_function, const size_t partition_func- tion_length, const char *function_name, const size_t function_name_length, const char *unique_str, const size_t unique_length, gear- man_work_t *workload, gearman_argument_t *arguments, void *context) Link with -lgearman DESCRIPTION
gearman_execute() is used to create a new gearman_task_st that is executed against the function that is found via the function_name argu- ment. gearman_work_t can be used to describe the work that will be executed, it is built with gearman_argument_make(). The argument unique_str is optional, but if supplied it is used for coalescence by gearmand. gearman_argument_t is the work that the client will send the to the server If gearman_execute() is given a gearman_work_t that has been built with a reducer, it takes the gearman_argument_t and executs it against a function as it normally would, but it tells the function to then process the results through a reducer function that the gearman_work_t was created with. What is happening is that the function is mappping/splitting work up into units, and then sending each of them to the reducer function. Once all work is completed, the mapper function will aggregate the work via an aggregator function, gearman_aggregator_fn, and return a result. If any of the units of work error, the job will be aborted. The resulting value will be stored in the gearman_task_st. The result can be obtained from the task by calling gearman_task_result() to gain the gearman_result_st. RETURN VALUE
gearman_execute() returns a c:type:gearman_task_st. EXAMPLE
/* Example code to show how to send a string to a function called "reverse" and print the results. */ #include <string.h> #include <stdlib.h> #include <stdio.h> #include <libgearman/gearman.h> int main(void) { gearman_client_st *client= gearman_client_create(NULL); gearman_return_t ret= gearman_client_add_server(client, "localhost", 0); if (gearman_failed(ret)) { return EXIT_FAILURE; } gearman_argument_t value= gearman_argument_make(0, 0, "Reverse Me", strlen("Reverse Me")); gearman_task_st *task= gearman_execute(client, "reverse", strlen("reverse"), // function NULL, 0, // no unique value provided NULL, &value, 0); if (task == NULL) // If gearman_execute() can return NULL on error { fprintf(stderr, "Error: %s ", gearman_client_error(client)); gearman_client_free(client); return EXIT_FAILURE; } // Make sure the task was run successfully if (gearman_success(gearman_task_return(task))) { // Make use of value gearman_result_st *result= gearman_task_result(task); printf("%.*s ", (int)gearman_result_size(result), gearman_result_value(result)); } gearman_client_free(client); return EXIT_SUCCESS; } HOME
To find out more information please check: http://gearman.info/ SEE ALSO
gearmand(8) libgearman(3) AUTHOR
Data Differential http://www.datadifferential.com/ COPYRIGHT
2012, Data Differential, http://www.datadifferential.com/ 0.33 May 04, 2012 GEARMAN_EXECUTE(3)
Man Page