Gearman-XS
view release on metacpan or search on metacpan
CODE:
Newxz(worker_cb, 1, gearman_worker_cb);
worker_cb->func= newSVsv(worker_fn);
worker_cb->cb_arg= context;
RETVAL= gearman_worker_add_function(self, function_name, timeout,
_perl_worker_function_callback,
(void *)worker_cb );
OUTPUT:
RETVAL
gearman_return_t
work(self)
gearman_xs_worker *self
CODE:
RETVAL= gearman_worker_work(self);
OUTPUT:
RETVAL
const char *
error(self)
gearman_xs_worker *self
CODE:
RETVAL= gearman_worker_error(self);
OUTPUT:
RETVAL
gearman_worker_options_t
options(self)
gearman_xs_worker *self
CODE:
RETVAL= gearman_worker_options(self);
OUTPUT:
RETVAL
void
set_options(self, options)
gearman_xs_worker *self
gearman_worker_options_t options
CODE:
gearman_worker_set_options(self, options);
void
add_options(self, options)
gearman_xs_worker *self
gearman_worker_options_t options
CODE:
gearman_worker_add_options(self, options);
void
remove_options(self, options)
gearman_xs_worker *self
gearman_worker_options_t options
CODE:
gearman_worker_remove_options(self, options);
void
grab_job(self)
gearman_xs_worker *self
PREINIT:
gearman_return_t ret;
PPCODE:
gearman_job_st *job= gearman_worker_grab_job(self, NULL, &ret);
XPUSHs(sv_2mortal(newSViv(ret)));
if (ret == GEARMAN_SUCCESS)
XPUSHs(sv_2mortal(_bless("Gearman::XS::Job", job)));
else
XPUSHs(&PL_sv_undef);
int
timeout(self)
gearman_xs_worker *self
CODE:
RETVAL= gearman_worker_timeout(self);
OUTPUT:
RETVAL
void
set_timeout(self, timeout)
gearman_xs_worker *self
int timeout
CODE:
gearman_worker_set_timeout(self, timeout);
gearman_return_t
wait(self)
gearman_xs_worker *self
CODE:
RETVAL= gearman_worker_wait(self);
OUTPUT:
RETVAL
void
set_log_fn(self, fn, verbose)
gearman_xs_worker *self
SV * fn
gearman_verbose_t verbose
CODE:
gearman_worker_set_log_fn(self, _perl_log_fn_callback, newSVsv(fn), verbose);
void
function_exists(self, function_name)
gearman_xs_worker *self
const char *function_name
PPCODE:
if (gearman_worker_function_exist(self, function_name, strlen(function_name)))
XSRETURN_YES;
else
XSRETURN_NO;
void
DESTROY(self)
gearman_xs_worker *self
CODE:
gearman_worker_free(self);
( run in 0.545 second using v1.01-cache-2.11-cpan-5511b514fd6 )