改名
This commit is contained in:
+4
-3
@@ -18,11 +18,12 @@ class Crontab extends Component
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* @param array|Closure $handler
|
* @param array|Closure $handler
|
||||||
|
* @param mixed $params
|
||||||
* @param int $tickTime
|
* @param int $tickTime
|
||||||
* @param bool $isLoop
|
* @param bool $isLoop
|
||||||
* @throws Exception
|
* @throws Exception
|
||||||
*/
|
*/
|
||||||
public function dispatch(array|Closure $handler, $tickTime = 1, $isLoop = false)
|
public function dispatch(array|Closure $handler, mixed $params = null, $tickTime = 1, $isLoop = false)
|
||||||
{
|
{
|
||||||
$redis = Snowflake::app()->getRedis();
|
$redis = Snowflake::app()->getRedis();
|
||||||
|
|
||||||
@@ -32,9 +33,9 @@ class Crontab extends Component
|
|||||||
|
|
||||||
$executeTime = time() + $tickTime;
|
$executeTime = time() + $tickTime;
|
||||||
|
|
||||||
$crontab = ['isLoop' => $isLoop, 'handler' => $handler, 'tick' => $tickTime];
|
$crontab = ['isLoop' => $isLoop, 'handler' => $handler, 'tick' => $tickTime, 'params' => $params];
|
||||||
|
|
||||||
$redis->sAdd('system:crontab', $executeTime, serialize($crontab));
|
$redis->zAdd('system:crontab', $executeTime, serialize($crontab));
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -51,7 +51,7 @@ class CrontabProcess extends Process
|
|||||||
$redis->zAdd('system:crontab', 0, time() + $list['tick'], serialize($list));
|
$redis->zAdd('system:crontab', 0, time() + $list['tick'], serialize($list));
|
||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
call_user_func($list['handler']);
|
call_user_func($list['handler'], $list['params'] ?? null);
|
||||||
} catch (\Throwable $throwable) {
|
} catch (\Throwable $throwable) {
|
||||||
$this->application->addError($throwable->getMessage());
|
$this->application->addError($throwable->getMessage());
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user