函数名:GearmanClient::doNormal()
适用版本:Gearman 0.6.0及以上版本
用法:GearmanClient::doNormal()函数用于向Gearman job server提交一个普通的任务请求,并等待任务完成后返回结果。该函数会阻塞当前进程直到任务完成或超时。
语法:bool GearmanClient::doNormal(string $function_name, string $workload [, string $unique = ''])
参数:
返回值:
示例:
<?php
// 创建Gearman客户端
$client = new GearmanClient();
// 连接Gearman job server
$client->addServer('127.0.0.1', 4730);
// 提交一个普通任务请求
$function_name = 'my_task_function';
$workload = 'Hello, Gearman!';
$unique = 'unique_id';
if ($client->doNormal($function_name, $workload, $unique)) {
echo "任务提交成功\n";
} else {
echo "任务提交失败\n";
}
// 等待任务完成并获取结果
$result = $client->doNormal($function_name, $workload, $unique);
if ($result) {
echo "任务执行成功,结果为: " . $result . "\n";
} else {
echo "任务执行失败\n";
}
// 关闭Gearman客户端连接
$client->close();
?>
注意事项: