GearmanWorker::addFunction

(PECL gearman >= 0.5.0)
Register and add callback function
public bool GearmanWorker::addFunction ( string $function_name, callable $function [, mixed &$context [, int $timeout ]] )

Registers a function name with the job server and specifies a callback corresponding to that function. Optionally specify extra application context data to be used when the callback is called and a timeout.

Parameters:
function_name

The name of a function to register with the job server

function

A callback that gets called when a job for the registered function name is submitted

context

A reference to arbitrary application context data that can be modified by the worker function

timeout

An interval of time in seconds

Returns:

Returns TRUE on success or FALSE on failure.

Examples:
Simple worker making use of extra application context data
<?php

# get a gearman worker
$worker= new GearmanWorker(); 

# add the default server (localhost)
$worker->addServer(); 

# define a variable to hold application data
$count= 0; 

# add the "reverse" function
$worker->addFunction("reverse", "reverse_cb", $count);

# start the worker
while ($worker->work());

function reverse_cb($job, &$count) 
{ 
  $count++; 
  return "$count: " . strrev($job->workload()); 
} 

?>

Running a client that submits two jobs for the reverse function would have output similar to the following:

1: olleh
2: dlrow
See also:

GearmanClient::do() -

doc_php
2016-02-24 16:09:00
Comments
Leave a Comment

Please login to continue.