From 53b826258879391fe24515c4fcd90bbb1d70c055 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mr=C2=B7x?= Date: Tue, 2 Mar 2021 12:08:21 +0800 Subject: [PATCH] =?UTF-8?q?=E6=94=B9=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- HttpServer/Action.php | 13 +++++++------ HttpServer/Server.php | 8 ++------ 2 files changed, 9 insertions(+), 12 deletions(-) diff --git a/HttpServer/Action.php b/HttpServer/Action.php index 622db125..1cb6d3b8 100644 --- a/HttpServer/Action.php +++ b/HttpServer/Action.php @@ -12,6 +12,7 @@ use Snowflake\Abstracts\Input; use Snowflake\Exception\ComponentException; use Snowflake\Exception\ConfigException; use Snowflake\Snowflake; +use Swoole\Coroutine; use Swoole\WebSocket\Server; /** @@ -55,9 +56,9 @@ trait Action return; } $content = file_get_contents($pid_file); - exec("ps -ef $content | grep $content", $output); + Coroutine\System::exec("ps -ef $content | grep $content", $output); if (!empty($output)) { - exec("kill -15 $content"); + Coroutine\System::exec("kill -15 $content"); } $this->close($server); } @@ -107,7 +108,7 @@ trait Action } foreach ($files as $file) { $content = file_get_contents($file->getRealPath()); - exec("ps -ax | awk '{ print $1 }' | grep -e '^{$content}$'", $output); + Coroutine\System::exec("ps -ax | awk '{ print $1 }' | grep -e '^{$content}$'", $output); if (count($output) > 0) { $this->closeByPid($content); } else { @@ -137,9 +138,9 @@ trait Action return false; } if (Snowflake::isLinux()) { - exec('netstat -tunlp | grep ' . $port, $output); + Coroutine\System::exec('netstat -tunlp | grep ' . $port, $output); } else { - exec('lsof -i :' . $port . ' | grep -i "LISTEN"', $output); + Coroutine\System::exec('lsof -i :' . $port . ' | grep -i "LISTEN"', $output); } if (empty($output)) { return false; @@ -153,7 +154,7 @@ trait Action */ private function closeByPid($pid) { - exec("ps -ef | grep $pid | grep -v grep | grep -v kill + Coroutine\System::exec("ps -ef | grep $pid | grep -v grep | grep -v kill if [ $? -eq 0 ];then kill -9 `ps -ef | grep $pid | grep -v grep | grep -v kill | awk '{print $2}'` else diff --git a/HttpServer/Server.php b/HttpServer/Server.php index 44266cc2..e819243e 100644 --- a/HttpServer/Server.php +++ b/HttpServer/Server.php @@ -3,7 +3,6 @@ namespace HttpServer; -use Annotation\IAnnotation; use HttpServer\Abstracts\HttpService; use HttpServer\Events\OnClose; use HttpServer\Events\OnConnect; @@ -23,12 +22,9 @@ use Snowflake\Exception\ComponentException; use Snowflake\Exception\ConfigException; use Snowflake\Exception\NotFindClassException; use Snowflake\Process\Biomonitoring; -use Snowflake\Process\ServerInotify; use Snowflake\Snowflake; use Swoole\Coroutine; -use Swoole\Process; use Swoole\Runtime; -use co; defined('PID_PATH') or define('PID_PATH', APP_PATH . 'storage/server.pid'); @@ -184,9 +180,9 @@ class Server extends HttpService } foreach ($port as $value) { if (Snowflake::isLinux()) { - exec('netstat -tunlp | grep ' . $value['port'], $output); + Coroutine\System::exec('netstat -tunlp | grep ' . $value['port'], $output); } else { - exec('lsof -i :' . $value['port'] . ' | grep -i "LISTEN"', $output); + Coroutine\System::exec('lsof -i :' . $value['port'] . ' | grep -i "LISTEN"', $output); } if (!empty($output)) { return true;