ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

swoole 协程

2021-11-17 14:33:56  阅读:203  来源: 互联网

标签:wg use 协程 swoole echo 任务 result


<?php


Co\run(function () {
    $wg = new \Swoole\Coroutine\WaitGroup();

    $result = [];

    $wg->add();//协程数量加1 

    $time = microtime(true);
    //启动第一个协程
    go(function () use ($wg, &$result) {//use 关键字 函数闭包 调用外部变量
        co::sleep(1);
        $result['data0'] = "lala";
        echo "协程1 任务完成\n";
        $wg->done();//本协程任务完成
    });

    $wg->add();//协程数量加1
    //启动第二个协程
    go(function () use ($wg, &$result) {
        co::sleep(2);
        $result['data1'] = "lala";
        echo "协程2 任务完成\n";
        $wg->done();//本协程任务完成
    });

    //挂起父协程,等待所有子协程任务完成后恢复
    $wg->wait();

    echo "所有协程任务完成,总耗时".(microtime(true)-$time)."s\n";
    //这里 $result 包含了 2 个任务执行结果
    var_dump($result);
});

  

https://blog.csdn.net/qq_35772366/article/details/106304489

标签:wg,use,协程,swoole,echo,任务,result
来源: https://www.cnblogs.com/brady-wang/p/15567141.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有