unpack, $clientInfo['address'], $clientInfo['port'], $data); if (empty($data)) { throw new Exception('Format error.'); } return $server->sendto($clientInfo['address'], $clientInfo['port'], DataResolve::pack($this->pack, $data)); } catch (\Throwable $exception) { $response['message'] = $exception->getMessage(); $response['state'] = 500; $response = DataResolve::pack($this->pack, $response); return $server->sendto($clientInfo['address'], $clientInfo['port'], $response); } finally { $event = Snowflake::app()->getEvent(); $event->trigger(Event::SERVER_WORKER_STOP); } } }