<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                #### 定時器處理 `Swoolefy\Core\Timer\TickManager`作為定時器管理類 1、循環定時器 ~~~ TickManager::getInstance()->tickTimer($time_interval, $func, $params = null) ~~~ 例如,創建一個循環定時器,返回定時$timer_id ~~~ $timer_id = TickManager::getInstance()->tickTimer(5000, ['App\Tick\TickController', 'test'], $params = '循環定時器') ~~~ 定時器處理程序,其實就是創建一個應用對象處理。建議定時器處理程序在自定進程中使用 ~~~ <?php namespace App\Init; use Swoolefy\Core\Swfy; use Swoolefy\Core\StartInit; use Swoolefy\Core\Process\ProcessManager; class Init extends StartInit { public function onInit() { // 創建一個測試自定義進程 ProcessManager::getInstance()->addProcess('test', \App\Process\TestProcess\Test::class); // 創建一個定時器處理進程 ProcessManager::getInstance()->addProcess('tick', \App\Process\TickProcess\Tick::class); } /** * onWorkerStart * @param $server * @return */ public function onWorkerStart($server,$worker_id) {} } ~~~ `App\Process\TickProcess\Tick`定義的自定義進程處理類,必須繼承`Swoolefy\Core\Process\AbstractProcess` ~~~ <?php namespace App\Process\TickProcess; use Swoole\Process; use Swoolefy\Core\Swfy; use Swoolefy\Core\Application; use Swoolefy\Core\Process\AbstractProcess; use Swoolefy\Core\Process\ProcessManager; use Swoolefy\Core\Process\SwooleProcess; use Swoolefy\Core\Timer\TickManager; class Tick extends AbstractProcess { public $SwooleProcessHander; public function run(Process $process) { // 協議層配置 // $conf = Swfy::getConf(); // var_dump($conf); // 創建定時器處理實例 TickManager::getInstance()->tickTimer(3000, ['App\Process\TickProcess\TickTestController','ticktest'], ['fffff']); } public function onReceive($str, ...$args) { // 測試退出進程,退出后,底層重新拉起一個新的進程 // $process = $this->getProcess(); // $process->kill($process->pid, SIGTERM); // $process->wait(); } public function onShutDown() {} public function __get($name) { return Application::$app->$name; } } ~~~ `TickManager::getInstance()->tickTimer(3000, ['App\Process\TickProcess\TickTestController','ticktest'], '定時器測試');` 這一行就是在自定義進程中創建定時任務處理實例,`App\Process\TickProcess\TickTestController`定時任務處理類,必須繼承`Swoolefy\Core\Process\ProcessController`,例如: ~~~ <?php namespace App\Process\TickProcess; use Swoolefy\Core\Application; use Swoolefy\Core\Process\ProcessController; class TickTestController extends ProcessController { public function ticktest($data) { var_dump($data); var_dump('這是自定義的定時器進程'); } } ~~~ 參數$data就是定時器執行時的傳遞的參數,可以是數組或者字符串,例子中`var_dump($data)`將打印出“定時器測試”
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看