From 25a09a379a223bfc1a882654e3630f55dbe306e5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mr=C2=B7x?= Date: Fri, 19 Mar 2021 19:27:19 +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 --- System/Abstracts/Crontab.php | 6 ++++-- System/Process/CrontabProcess.php | 5 +++++ 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/System/Abstracts/Crontab.php b/System/Abstracts/Crontab.php index 435cd31b..8fca60f4 100644 --- a/System/Abstracts/Crontab.php +++ b/System/Abstracts/Crontab.php @@ -38,7 +38,9 @@ class Crontab extends Component $redis = Snowflake::app()->getRedis(); $data = $redis->zRevRange('system:crontab', 0, -1); - + if (empty($data)) { + return; + } foreach ($data as $datum) { /** @var \Snowflake\Crontab $crontab */ $crontab = unserialize($datum); @@ -57,7 +59,7 @@ class Crontab extends Component { $redis = Snowflake::app()->getRedis(); - $redis->zRemRangeByRank('system:crontab', '0', '-1'); + $redis->del('system:crontab'); } diff --git a/System/Process/CrontabProcess.php b/System/Process/CrontabProcess.php index d4e17de7..6fe14a2d 100644 --- a/System/Process/CrontabProcess.php +++ b/System/Process/CrontabProcess.php @@ -69,6 +69,11 @@ class CrontabProcess extends Process $lists = $redis->zRangeByScore('system:crontab', '0', (string)$score); $redis->zRemRangeByScore('system:crontab', '0', (string)$score); + if (empty($lists)) { + $redis->release(); + return; + } + $barrier = Barrier::make(); foreach ($lists as $list) { $list = unserialize($list);