swoole一键协程

Posted brady-wang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了swoole一键协程相关的知识,希望对你有一定的参考价值。

swoole4.x后支持一键协程 加上后,开启一键协程化后,mysqlRedisCurl 等操作会变成异步 IO

//此行代码后,文件操作,sleep,Mysqli,PDO,streams等都变成异步IO,见文档"一键协程化"章节
SwooleRuntime::enableCoroutine();
Co
un(function() {
    // i just want to sleep...
    for ($c = 100; $c--;) {
        go(function () {
            for ($n = 100; $n--;) {
                sleep(1);
                echo $n.php_EOL;
            }
        });
    }

    // 10k file read and write
    for ($c = 100; $c--;) {
        go(function () use ($c) {
            $tmp_filename = "/tmp/test-{$c}.php";
            for ($n = 100; $n--;) {
                $self = file_get_contents(__FILE__);
                file_put_contents($tmp_filename, $self);
                echo $tmp_filename.PHP_EOL;
                assert(file_get_contents($tmp_filename) === $self);
            }
            unlink($tmp_filename);
        });
    }
});

 

以上是关于swoole一键协程的主要内容,如果未能解决你的问题,请参考以下文章

Swoole系列4.8一键协程化

swoole协程与go协程

think-swoole当中多协程进行访问

Swoole 2.0 正式版发布,协程特性支持 PHP 7

Swoole 协程工作池 swoole-co-pool

swoole与php协程实现异步非阻塞IO开发