mirror of
https://github.com/zhamao-robot/zhamao-framework.git
synced 2026-07-23 00:25:35 +08:00
add timer tick
This commit is contained in:
29
src/ZM/Plugin/Traits/TickTrait.php
Normal file
29
src/ZM/Plugin/Traits/TickTrait.php
Normal file
@@ -0,0 +1,29 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace ZM\Plugin\Traits;
|
||||
|
||||
use ZM\Annotation\Framework\Tick;
|
||||
|
||||
trait TickTrait
|
||||
{
|
||||
protected array $ticks = [];
|
||||
|
||||
public function addTimerTick(int $ms, callable $callback, int $worker_id = 0): void
|
||||
{
|
||||
$tick = new Tick($ms, $worker_id);
|
||||
if (is_array($callback)) {
|
||||
$tick->class = $callback[0];
|
||||
$tick->method = $callback[1];
|
||||
} elseif ($callback instanceof \Closure) {
|
||||
$tick->method = $callback;
|
||||
}
|
||||
$this->ticks[] = $tick;
|
||||
}
|
||||
|
||||
public function getTimerTicks(): array
|
||||
{
|
||||
return $this->ticks;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user