/** * 内部通讯socket在BusinessWorker主动关闭连接时触发 * @param int $fd */ protected function closeInnerClient($fd) { unset($this->workerConnections[$fd]); parent::closeClient($fd); }
/** * 关闭连接 * @see Man\Core.SocketWorker::closeClient() */ protected function closeClient($fd = null) { // 清理$this->gatewayConnections对应项 foreach ($this->gatewayConnections as $addr => $con) { $the_fd = (int) $con; if ($the_fd == $fd) { unset($this->gatewayConnections[$addr], $this->badGatewayAddress[$addr]); } } parent::closeClient($fd); }
protected function closeClient($fd) { if ($uid = $this->getUidByFd($fd)) { $this->sendToWorker(GatewayProtocol::CMD_ON_CLOSE, $fd); unset($this->uidConnMap[$uid], $this->connUidMap[$fd]); } parent::closeClient($fd); }