函数名:GearmanClient::setCreatedCallback()
函数功能:设置当任务被创建时的回调函数
适用版本:GearmanClient 0.6.0及以上版本
用法:
bool GearmanClient::setCreatedCallback ( callable $callback )
参数:
$callback
:一个可调用的回调函数,用于处理任务被创建时的操作。回调函数接受一个参数,即任务的唯一标识符。
返回值:
- 成功时返回true,失败时返回false。
示例:
// 创建Gearman客户端对象
$client = new GearmanClient();
// 连接Gearman服务器
$client->addServer('127.0.0.1', 4730);
// 设置回调函数
$client->setCreatedCallback(function($jobHandle) {
echo "任务已创建,任务标识符为:".$jobHandle."\n";
});
// 添加任务
$client->addTask('task_function', 'task_data');
// 提交任务
$client->runTasks();
// 输出结果:
// 任务已创建,任务标识符为:H:localhost:1
说明:
GearmanClient::setCreatedCallback()
函数用于设置当任务被创建时的回调函数。在任务被添加到Gearman服务器之前,回调函数将被触发,可以用于记录任务的唯一标识符或执行其他相关操作。- 回调函数可以是一个匿名函数、一个类的方法或一个可调用的函数。
- 回调函数接受一个参数,即任务的唯一标识符(job handle),可以在回调函数中使用该标识符进行进一步处理。
- 如果回调函数返回false,任务将被取消。如果回调函数抛出异常,任务将被视为失败。
- 在示例中,我们创建了一个Gearman客户端对象,并连接到Gearman服务器。然后,我们设置了一个回调函数来处理任务被创建时的操作。接下来,我们添加了一个任务,并通过
runTasks()
方法提交任务。当任务被创建时,回调函数将被触发,并输出任务的唯一标识符。