2

Gearman を使用しており、doLowBackground や doHigh などのメソッドを使用すると、これらはすべて jobHandle を返しますが、タスクを実行すると jobHandle オブジェクトはありません。jobHandle を取得する代わりに、GearmanTask オブジェクトを取得します。string(0) ""

これを引き起こす可能性のあるアイデアはありますか?

ありがとうございました!

編集:コードと追加情報は次のとおりです。

// $client = \GearmanClient; // servers added, all that jazz
// $workload = 'string';

$arguments = array(
    'handleJob',
    $workload
);

$task = call_user_func_array(array($client, $method), $arguments);

if ($task instanceof GearmanTask) {
    $handles[] = $task->jobHandle();
}

$data = $client->runTasks();

タスクは正しく実行$handleされますが、空の文字列が入力されています (追加されたタスクごとに 1 つ)。

編集:これは私たちが得る応答です:

object(GearmanTask)#294 (0) {
}

すべての PECL ギアマン オブジェクトをダンプしましたが、何も表示されません。これがクライアントで、サーバーやオプションなどが取り込まれています。

object(GearmanClient)#291 (0) {
}

何も表示されません。

4

1 に答える 1