sudo apt-get install gearman-job-server
$worker = new GearmanWorker();
$worker->addServer();
$worker->addFunction("do_task", function(GearmanJob $job) {
// 处理任务的代码
});
while ($worker->work());
在上述代码中,我们首先创建了一个GearmanWorker对象,并添加了一个Gearman服务器。然后,我们使用addFunction()方法,将一个任务名称“do_task”和一个回调函数绑定在一起。当一个任务被分配给该worker时,回调函数将被调用。
最后,我们使用while循环,让worker一直处于工作状态,以便随时处理任务。
$client = new GearmanClient();
$client->addServer();
$client->doBackground("do_task", "task_data");
在上述代码中,我们首先创建了一个GearmanClient对象,并添加了一个Gearman服务器。然后,我们使用doBackground()方法,将一个任务名称“do_task”和一个任务数据“task_data”发送到Gearman服务器上。
在这里,我们使用doBackground()方法而不是do()方法,因为doBackground()方法是异步的,它不会阻塞当前进程,而是会立即返回。
扫描二维码
与我联系
评论列表:
发布于 3月前回复该评论
发布于 3月前回复该评论
发布于 3月前回复该评论
发布于 3月前回复该评论
发布于 3月前回复该评论