#!/usr/bin/env php addEventListener(WorkerStartEvent::getName(), function () { try { $retcode = Command::main(false); } finally { global $_swoole_atomic; $_swoole_atomic->set($retcode ?? 0); Framework::getInstance()->stop(); } }, 1); try { $options = ServerStartCommand::exportOptionArray(); $options['driver'] = 'swoole'; $options['worker-num'] = 1; $options['private-mode'] = true; (new Framework($options))->init()->start(); exit($_swoole_atomic->get()); } catch (Throwable $e) { echo $e->getMessage() . PHP_EOL; exit(1); }