亚洲精品成人_精品成人一区_999视频在线播放_免费黄色在线_亚洲成人久久久_久久www免费视频

CoroutineRunner

協(xié)程執(zhí)行器 CoroutineRunner類似于Csp組件,但更加靈活,可以投遞協(xié)程任務(wù)并限制最大同時執(zhí)行數(shù)、最長執(zhí)行時間、成功或失敗回調(diào)

簡單示例

use co;
use EasySwoole\Component\CoroutineRunner\Runner;
use EasySwoole\Component\CoroutineRunner\Task;

$runner = new Runner(10);
$runner->setOnException(function(\Throwable  $e, $task){
    echo $e->getMessage();
    echo PHP_EOL;
});

$max = 30;
$allTask = [];
while($max>0){
    $task = new Task(function() use ($max) {
        echo $max .PHP_EOL;
        co::sleep(1);
        // 將設(shè)這是一個curl爬取任務(wù) return 爬取結(jié)果 可以在外部獲取
        return 'ok';
    });
    $runner->addTask($task);
    $allTask[] = $task;
    $max--;
}

$runner->start(1);// 最長執(zhí)行1秒  總共投遞了30個 最大并發(fā)10個 需要3秒執(zhí)行完,所以會有一部分將被丟棄  看下方參數(shù)說明列表

foreach($allTask as $key => $task){
    var_dump($task->getResult());
}

參數(shù)說明

Runner構(gòu)造函數(shù)

可接收兩個參數(shù) __construct($concurrency = 64,$taskChannelSize = 1024)

  • concurrency 最大同時執(zhí)行的協(xié)程數(shù)量
  • taskChannelSize 可投遞的task隊列長度

Runner->setOnException

設(shè)置異常回調(diào) 有兩個參數(shù) (\Throwable $e, Task $task)

Runner->start

開啟已經(jīng)投遞的task協(xié)程的執(zhí)行,有一個參數(shù)

  • float $waitTime = 30 最長執(zhí)行時間,如果超過這個時間,剩余的task協(xié)程將被丟棄,不再執(zhí)行。

Task構(gòu)造函數(shù)

需要一個callable參數(shù),用于調(diào)用執(zhí)行,可以在閉包內(nèi)return數(shù)據(jù),外部使用 $task->getResult()獲取

  • return 不等于 false的數(shù)據(jù)將會觸發(fā)onSuccess
  • return false 將會觸發(fā) onFail

Task->setOnSuccess

需要一個callable參數(shù)

【非必選】 task執(zhí)行完成回調(diào)

Task->setOnFail

需要一個callable參數(shù)

【非必選】 task執(zhí)行失敗回調(diào)

Task->getResult

獲取call函數(shù)執(zhí)行后return的數(shù)據(jù)

主站蜘蛛池模板: 亚洲一区欧美日韩 | 操操操综合 | 一本色道久久综合亚洲精品浪潮 | 成人精品久久日伦片大全免费 | 亚洲成人综合视频 | 黑人疯狂做爰xxxⅹ高潮软件 | 美女精品 | 精品综合网 | 色婷婷一区二区三区四区 | 岛国大片在线播放 | 国产日韩一区二区三区 | 我朋友的妈妈在线 | 国产1区2区3区中文字幕 | 四虎伊人 | 亚洲日批| 日本六九视频69jzz | 久久综合久久久 | 黄色毛片网 | 亚洲一级免费视频 | 日本一区二区三区四区 | 国产女主播三级在线观看 | 亚洲一区二区三区成人 | 亚洲国产在 | 国产精品 | 国产免费高清 | 在线步 | 欧美bb视频| 国产精品久久久久国产三级传媒 | 77狠人色综合网亚洲 | 国产一区二区三区四 | 日韩欧美成 | 久久久精品国 | 天天干天天操天天干天天操 | 91中文在线观看 | 日韩欧美第一区 | 国产三区精品 | 99久久久国产精品免费观看 | 青青青爽视频在线观看 | 国产毛片a | 国产夜夜夜 | 免费欧美一级片 |