GearmanWorker::returnCode()

获取上一次 Gearman 任务执行的返回码

首字母:G

函数名:GearmanWorker::returnCode()

适用版本:GearmanWorker类在PHP 5 >= 5.3.0, PECL gearman >= 0.5.0 版本中可用。

用法:GearmanWorker::returnCode() 函数用于获取上一次 Gearman 任务执行的返回码。

返回码是一个整数,代表了任务的执行状态。返回码的含义如下:

  • GEARMAN_SUCCESS:任务成功完成。
  • GEARMAN_IO_WAIT:等待 I/O 事件。
  • GEARMAN_WORK_FAIL:任务执行失败。
  • GEARMAN_WORK_EXCEPTION:任务执行时发生异常。
  • GEARMAN_WORK_DATA:任务返回数据。
  • GEARMAN_WORK_WARNING:任务执行时发出警告。
  • GEARMAN_WORK_STATUS:任务执行状态更新。

示例:

addServer('127.0.0.1', 4730);
$worker->addFunction('reverse', function (GearmanJob $job) {
 $workload = $job->workload();
 $result = strrev($workload);
 $job->sendData($result);
});
while ($worker->work()) {
 if ($worker->returnCode() !== GEARMAN_SUCCESS) {
 echo "Worker failed with return code: " . $worker->returnCode() . "\n";
 break;
 }
}
?>

在上面的示例中,我们创建了一个 GearmanWorker 对象,并添加了一个函数 reverse。当有任务到达时,该函数会将任务的负载字符串颠倒并通过 $job->sendData() 返回结果。在 while 循环中,我们通过检查 $worker->returnCode() 的返回值来判断工作进程是否正常运行。如果返回码不等于 GEARMAN_SUCCESS,则表示任务执行失败,我们输出相应的错误信息并终止循环。

同首字母函数