public function onPipeMessage($server, $fromWorkerId, $message)
{
if (is_object($message) && $message instanceof \stdClass && $message->_sys === true) {
$name = $message->name;
$serverId = $message->sid;
$message = $message->data;
} else {
$serverId = self::$serverId;
$name = null;
}
if ($server->taskworker) {
# 调用 task 进程
self::$workerTask->onPipeMessage($server, $fromWorkerId, $message, $serverId);
} else {
if ($name && isset(self::$workers[$name])) {
# 调用对应的 worker 对象
self::$workers[$name]->onPipeMessage($server, $fromWorkerId, $message, $serverId);
} else {
self::$worker->onPipeMessage($server, $fromWorkerId, $message, $serverId);
}
}
}