多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
# Coroutine\Client->recv `recv`方法用于从服务器端接收数据。底层会自动`yield`,等待数据接收完成后自动切换到当前协程。 ```php function Coroutine\Client->recv(float $timeout = -1) : string; ``` * `recv`方法,不接受长度参数,当设置了通信协议后。`recv`会返回完整的数据 * 未设置通信协议返回原始的数据,需要`PHP`代码中自行实现网络协议的处理 * 服务端主动关闭连接,`recv`返回空字符串 * `recv`操作需要进行一次协程切换,在收到数据后进行`resume` * `$timeout` 设置超时,单位为秒,浮点型,需要`2.1.2`或更高版本 超时设置 ---- * 传入了`$timeout`,优先使用制定的`timeout`参数 * 未传入`$timeout`,但在`connect`时指定了超时时间,自动以`connect`超时时间作为`recv`超时时间 * 未传入`$timeout`,未设置`connect`超时,将设置为`-1`表示永不超时 * 发生超时的错误码为`ETIMEDOUT`