項(xiàng)目采用GateWayWorker框架,如果需要2個異步任務(wù)去執(zhí)行耗時操作的話,是不是要建3個實(shí)例,A實(shí)例接數(shù)據(jù),B C實(shí)例跑任務(wù),那A實(shí)例是通過AsyncTcpConnection去鏈接B C實(shí)例嗎,B C實(shí)例中的任務(wù)結(jié)果該如何返回?
看了手冊中的例子假如B 實(shí)例
$task_worker->onMessage = function($connection, $task_data)
{
// 假設(shè)發(fā)來的是json數(shù)據(jù)
$task_data = json_decode($task_data, true);
// 根據(jù)task_data處理相應(yīng)的任務(wù)邏輯.... 得到結(jié)果,這里省略....
$task_result = ......
// 發(fā)送結(jié)果
$connection->send(json_encode($task_result));
};
A實(shí)例中onMessage回調(diào)中要如何接收task_result
$task_connection->onMessage = function($task_connection, $task_result)
{
// 結(jié)果
var_dump($task_result);
// 獲得結(jié)果后記得關(guān)閉鏈接
$task_connection->close();
};
這樣不行的,接收不到結(jié)果,還是原本就不是這樣用的