数据库 - Model 前置说明
官方开源项目 抓取代理IP

Whlie自动化

自定义进程的public function run()接口方法,默认是只会执行一次。
如果需要循环执行,则需要使用while等循环语句控制,为此框架提供了Whlie自动化的支持。
通过设置$onWhile$sleepS成员属性,来控制循环开启和下一次的等待间隔时间。

Whlie自动化一般适用于一些消息队列类的业务,如果你不需要启动框架支持的While支持,还可以自己在public function run()接口方法中编写循环语句实现,我们通过代码来举例:

<?php
namespace box\process;
use design\AbstractProcess;

class Demo extends AbstractProcess
{
    /**
     * 是否需要while(true) 永久堵塞
    */
    public $onWhile = true;

    /**
     * 等待间隔时间(毫秒)  0不堵塞
    */
    public $sleepS = 1000;

    // 进程逻辑接口方法
    public function run() {
        $Redis = new \x\Redis();
        // 读取一条队列信息
        $info = $Redis->LPOP();
    }
}

警告:自定义进程中若实现了循环消费后,数据投递功能将无法使用,因为框架底层是在进程末尾监听的数据投递逻辑,如果逻辑中使用了whlie(true),理论上是无法到达进程末尾。

SW-X

企业级 - 高性能 PHP 框架

最后更新:3年前 . 作者-小黄牛

本篇目录