文字

GearmanClient::setCompleteCallback

(PECL gearman >= 0.5.0)

GearmanClient::setCompleteCallbackSet a function to be called on task completion

说明

public bool GearmanClient::setCompleteCallback ( callable $callback )

Use to set a function to be called when a task is completed. The callback function should accept a single argument, a GearmanTask object.

参数

callback

A function to be called

返回值

成功时返回 TRUE , 或者在失败时返回 FALSE

参见

  • GearmanClient::setDataCallback() - Callback function when there is a data packet for a task
  • GearmanClient::setCreatedCallback() - Set a callback for when a task is queued
  • GearmanClient::setExceptionCallback() - Set a callback for worker exceptions
  • GearmanClient::setFailCallback() - Set callback for job failure
  • GearmanClient::setStatusCallback() - Set a callback for collecting task status
  • GearmanClient::setWarningCallback() - Set a callback for worker warnings
  • GearmanClient::setWorkloadCallback() - Set a callback for accepting incremental data updates

用户评论:

[#1] Justas Butkus [2011-08-18 06:59:06]

One shall note, that callback function MUST either return a valid Gearman status code, or return nothing (do not return).

I.e. these are valid complete callbacks:

<?php
function goodCallbackOne(GearmanTask $task)
{
    
print_r($task);
}
?>


<?php
function goodCallbackTwo(GearmanTask $task)
{
    
print_r($task);
    return 
GEARMAN_SUCCESS;
}
?>


While following is NOT, unless you want your client code to fail with Gearman error 'german wait:no active file descriptors':

<?php
function badCallbackTwo(GearmanTask $task)
{
    
print_r($task);
    return 
true;
}
?>

上一篇: 下一篇: