Coroutine

最后更新于:2022-04-02 06:25:35

# Coroutine [TOC] ## 短名称 在`2.0.13`与`2.1.0`或更高版本中,增加了协程短名特性,简化了协程相关`API`的名称书写。可修改`php.ini`设置`swoole.use_shortname`来关闭/开启短名,默认为开启。 #### 创建协程 ~~~ go(function () { co::sleep(0.5); echo "hello"; }); go("test"); go([$object, "method"]); ~~~ #### 通道操作 ~~~ $c = new chan(1); $c->push($data); $c->pop(); ~~~ #### 协程客户端 ~~~ $redis = new Co\Redis; $mysql = new Co\MySQL; $http = new Co\Http\Client; $tcp = new Co\Client; $http2 = new Co\Http2\Client; ~~~ #### 其他 API ~~~ co::sleep(100); co::fread($fp); co::gethostbyname('www.baidu.com'); ~~~ #### 延迟执行 ~~~ defer(function () use ($db) { $db->close(); }); ~~~
';