首页 > php框架 > Swoole > 正文

swoole获取消息发送失败错误的方法

发布: 2019-12-24 16:23:25
原创
2675 人浏览过

swoole获取消息发送失败错误的方法

向客户端发送数据,函数原型:

bool Server->send(mixed $fd, string $data, int $serverSocket = -1);
登录后复制

发送过程是异步的,底层会自动监听可写,将数据逐步发送给客户端

参数

$fd,客户端的文件描述符

$data,发送的数据,TCP协议最大不得超过2M,可修改 buffer_output_size 改变允许发送的最大包长度

$serverSocket,向Unix Socket DGRAM对端发送数据时需要此项参数,TCP客户端不需要填写

返回值

发送成功会返回true

发送失败会返回false,调用$server->getLastError()方法可以得到失败的错误码

Server->getLastError

获取最近一次操作错误的错误码。业务代码中可以根据错误码类型执行不同的逻辑。

function Server->getLastError()
登录后复制

返回一个整型数字错误码

发送失败错误

1001 连接已经被Server端关闭了,出现这个错误一般是代码中已经执行了$serv->close()关闭了某个连接,但仍然调用$serv->send()向这个连接发送数据

1002 连接已被Client端关闭了,Socket已关闭无法发送数据到对端

1003 正在执行close,onClose回调函数中不得使用$serv->send()

1004 连接已关闭

1005 连接不存在,传入$fd 可能是错误的

1007 接收到了超时的数据,TCP关闭连接后,可能会有部分数据残留在管道缓存区内,这部分数据会被丢弃

1008 发送缓存区已满无法执行send操作,出现这个错误表示这个连接的对端无法及时收数据导致发送缓存区已塞满

1202 发送的数据超过了 server->buffer_output_size 设置

推荐学习: swoole视频教程

以上是swoole获取消息发送失败错误的方法的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板