diff --git a/HttpServer/Action.php b/HttpServer/Action.php index 46f2d14b..8235150e 100644 --- a/HttpServer/Action.php +++ b/HttpServer/Action.php @@ -5,6 +5,8 @@ namespace HttpServer; use Exception; +use Snowflake\Abstracts\Input; +use Snowflake\Exception\ComponentException; use Snowflake\Snowflake; use Swoole\WebSocket\Server; @@ -28,7 +30,6 @@ trait Action } - /** * @param \HttpServer\Server $socket * @throws Exception @@ -97,9 +98,15 @@ trait Action /** * @param $port * @return bool|array + * @throws ComponentException */ private function isUse($port) { + /** @var Input $input */ + $input = Snowflake::app()->get('input'); + if (in_array($input->get('action'), ['start', 'restart'])) { + return true; + } if (empty($port)) { return false; } diff --git a/System/Application.php b/System/Application.php index 265eec01..a534a02f 100644 --- a/System/Application.php +++ b/System/Application.php @@ -83,6 +83,7 @@ class Application extends BaseApplication */ public function start(Input $argv) { + $this->set('input', $argv); $manager = Snowflake::app()->server; $manager->setDaemon($argv->get('daemon', 0)); switch ($argv->get('action')) {