• swoole_process模拟耗时操作


    • 一例串行阻塞操作
    <?php
    $start = time();
    $tasklists = [
        '/root/文档/longtale1.txt',
        '/root/文档/longtale2.txt',
        '/root/文档/longtale3.txt',
        '/root/文档/longtale4.txt',
        '/root/文档/longtale5.txt',
    ];
    
    function parseurl($path)
    {
        sleep(2);  #模拟某些耗时操作
        return "这个文件的文件名是".$path."
    ";
    }
    
    foreach ($tasklists as $tasklist)
    {
        echo parseurl($tasklist);
    }
    $end = time();
    echo "共耗时:".($end-$start);
    • 异步操作
    <?php
    $start = time();

    $tasklists = [
    '/root/文档/longtale1.txt',
    '/root/文档/longtale2.txt',
    '/root/文档/longtale3.txt',
    '/root/文档/longtale4.txt',
    '/root/文档/longtale5.txt',
    ];

    $processlist=[];

    function parseurl($path)
    {
    sleep(2);
    return "要解析的文件名为".$path.PHP_EOL;
    }

    foreach($tasklists as $tasklist)
    {
    $process = new swoole_process(function(swoole_process $sw) use($tasklist){
    $ret = parseurl($tasklist);
    $sw->write($ret);
    },false);
    $process->start();
    array_push($processlist,$process);
    }

    foreach($processlist as $myprocess)
    {
    echo $myprocess->read().PHP_EOL;
    }

    $end = time();
    echo "总共耗时".($end-$start);
    ?>
  • 相关阅读:
    字符串型
    字符型
    实型(浮点型)
    sizeof
    数据类型
    标识符
    Win32汇编
    Win32汇编
    C# 语言程序设计笔记
    鬼泣4:寻找无限生命/剑气/暴怒
  • 原文地址:https://www.cnblogs.com/saintdingspage/p/10987122.html
Copyright © 2020-2023  润新知