mkusher/react-co

简单的 reactphp 协程

dev-master 2016-08-07 08:34 UTC

This package is not auto-updated.

Last update: 2024-09-14 20:09:26 UTC


README

Build Status

为您的 reactphp 应用提供简单的协程。

安装

使用 composer 安装此包

composer require mkusher/react-co

协程

不知道什么是协程?阅读这篇 精彩的文章(Nikita Popov)

示例

基本示例,其中 asyncOp1asyncOp2 是返回 PromiseInterface 实例的异步函数。

use Mkusher\Co;

Co\await(function() {
    $a = yield asyncOp1();
    $b = yield asyncOp2($a);
});

await 返回 Promise,因此您可以等待所有操作完成,如下所示

use Mkusher\Co;

Co\await(function() {
    $a = yield asyncOp1();
    return "10";
})->then(function($result) {
    echo $result;
});

此示例将在执行 asyncOp1 后写入 "10"。

您可以在 示例目录 中找到更多示例