MyQEE\Server\Server::setListenCallback PHP Метод

setListenCallback() защищенный Метод

设置自定义端口监听的回调
protected setListenCallback ( string $key, Swoole\Server\Port $listen, stdClass $opt )
$key string
$listen Swoole\Server\Port
$opt stdClass
    protected function setListenCallback($key, $listen, \stdClass $opt)
    {
        # 设置回调
        $listen->on('Receive', function ($server, $fd, $fromId, $data) use($key) {
            if (isset(self::$workers[$key])) {
                self::$workers[$key]->onReceive($server, $fd, $fromId, $data);
            }
        });
        switch ($opt->type) {
            case SWOOLE_SOCK_TCP:
            case SWOOLE_SOCK_TCP6:
                $listen->on('Connect', function ($server, $fd, $fromId) use($key) {
                    if (isset(self::$workers[$key])) {
                        self::$workers[$key]->onConnect($server, $fd, $fromId);
                    }
                });
                $listen->on('Close', function ($server, $fd, $fromId) use($key) {
                    if (isset(self::$workers[$key])) {
                        self::$workers[$key]->onClose($server, $fd, $fromId);
                    }
                });
                break;
            case SWOOLE_UNIX_STREAM:
                $listen->on('Packet', function ($server, $data, $clientInfo) use($key) {
                    if (isset(self::$workers[$key])) {
                        self::$workers[$key]->onPacket($server, $data, $clientInfo);
                    }
                });
                break;
        }
    }