diff --git a/bin/phpunit-zm b/bin/phpunit-zm index 335ecc2e..73049fcd 100755 --- a/bin/phpunit-zm +++ b/bin/phpunit-zm @@ -37,10 +37,7 @@ ob_event_provider()->addEventListener(WorkerStartEvent::getName(), function () { } finally { global $_swoole_atomic; $_swoole_atomic->set($retcode ?? 0); - if (DIRECTORY_SEPARATOR === '\\') { - exit($retcode ?? 0); - } - Framework::getInstance()->stop(); + Framework::getInstance()->stop($retcode ?? 0); } }, 1); diff --git a/src/ZM/Framework.php b/src/ZM/Framework.php index 33b0ff08..0d58845e 100644 --- a/src/ZM/Framework.php +++ b/src/ZM/Framework.php @@ -109,7 +109,7 @@ class Framework * 未测试 * @throws ZMKnownException */ - public function stop() + public function stop(int $retcode = 0) { switch ($this->driver->getName()) { case 'swoole': @@ -120,7 +120,7 @@ class Framework if (extension_loaded('posix')) { posix_kill(ProcessStateManager::getProcessState(ZM_PROCESS_MASTER)['pid'], SIGTERM); } else { - Worker::stopAll(); + Worker::stopAll($retcode); } break; }