GearmanWorker::addFunction

(PECL gearman >= 0.5.0)

GearmanWorker::addFunction注册并添加回调函数

描述

public GearmanWorker::addFunction(
    string $function_name,
    callable $function,
    mixed $context = null,
    int $timeout = 0
): bool

在作业服务器上注册一个函数名并指定一个与该函数对应的回调。可选地指定额外的应用程序上下文数据,这些数据将在调用回调时使用,以及超时。

参数

function_name

要在作业服务器上注册的函数名

function

当为注册的函数名提交作业时,将被调用的回调

context

对任意应用程序上下文数据的引用,该数据可以由工作函数修改

timeout

以秒为单位的时间间隔

返回值

成功时返回 true,失败时返回 false

示例

示例 #1 使用额外应用程序上下文数据的简单工作程序

<?php

# 获取一个 Gearman 工作程序
$worker= new GearmanWorker();

# 添加默认服务器 (localhost)
$worker->addServer();

# 定义一个变量来保存应用程序数据
$count= 0;

# 添加 "reverse" 函数
$worker->addFunction("reverse", "reverse_cb", $count);

# 启动工作程序
while ($worker->work());

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

?>

运行一个客户端,为 reverse 函数提交两个作业,将输出类似于以下内容

1: olleh
2: dlrow

参见

添加注释

用户贡献注释

此页面没有用户贡献的注释。
To Top