查询

GearmanClient::do()函数—用法及示例

「 向Gearman服务器提交一个任务请求,并等待服务器返回结果 」


函数名:GearmanClient::do()

适用版本:GearmanClient::do()函数是在Gearman PECL扩展版本1.0.0及以上版本中引入的。

用法:GearmanClient::do()函数用于向Gearman服务器提交一个任务请求,并等待服务器返回结果。该函数主要有以下参数:

  1. job_handle:一个字符串变量,用于存储任务的唯一标识符,由服务器返回。
  2. function_name:一个字符串变量,表示要执行的任务函数的名称。
  3. workload:一个字符串变量,表示要传递给任务函数的工作负载。

返回值:如果成功提交任务请求,则返回一个表示任务结果的字符串。如果失败,则返回false。

示例:

<?php
// 创建Gearman客户端对象
$client = new GearmanClient();

// 向Gearman服务器添加服务器地址和端口
$client->addServer('127.0.0.1', 4730);

// 提交任务请求
$result = $client->do('task_function', 'workload');

if ($result !== false) {
    echo "任务结果:".$result;
} else {
    echo "任务提交失败";
}

// 关闭Gearman客户端连接
$client->close();
?>

在上述示例中,我们首先创建了一个GearmanClient对象,并使用addServer()方法添加了Gearman服务器的地址和端口。然后,使用do()函数提交了一个任务请求,任务函数名为'task_function',传递的工作负载为'workload'。最后,根据返回的结果,我们可以判断任务是否成功提交,并输出相应的结果。

请注意,为了使用GearmanClient::do()函数,你需要在服务器上安装并启用Gearman扩展,并且需要有一个可用的Gearman服务器。

补充纠错
热门PHP函数
分享链接