VTCP 错误代码解析
- 文档
- 2015-10-13
- 120热度
- 0评论
enum EVTcpErrorCode { VTCP_ERROR_NOT_ENOUGH_MEMORY = 1, //内存不足 VTCP_ERROR_INVALID_PARAMETER = 2, //参数错误 VTCP_ERROR_INVALID_STATE = 3, //句柄状态错误 VTCP_ERROR_INVALID_SOCKET = 4, //句柄错误 VTCP_ERROR_TIMEOUT = 5, //操作超时 VTCP_ERROR_WOULDBLOCK = 7, //异步阻挡 VTCP_ERROR_CONNRESET = 8, //远程关闭了连接 VTCP_ERROR_CONNABORTED = 9, //本地关闭了连接 VTCP_ERROR_CONNREFUSED = 10, //连接被积极拒绝 VTCP_ERROR_MSG_SIZE = 11, //消息尺寸错误 VTCP_ERROR_CANCELLED = 12, //操作被取消 VTCP_ERROR_NOT_FOUND = 13, //对象未发现 VTCP_ERROR_BUSY = 14, //系统繁忙 VTCP_ERROR_SYSTEM_FAIL = 15, //系统调用失败 VTCP_ERROR_NETRESET = 16, //因保活检测失败而断线 };
对于 vtcp_bind 函数
VTCP_ERROR_SYSTEM_FAIL: 可能是端口被占用,导致系统失败。
对于vtcp_listen 函数
VTCP_ERROR_INVALID_STATE: 没有进行vtcp_bind 就直接调用了vtcp_listen而返回状态不正确。
对于vtcp_send/vtcp_recv函数:
VTCP_ERROR_INVALID_STATE: 在一个未连接的VTCP句柄上进行此调用而返回状态不正确。
对于vtcp_connect,vtcp_send,vtcp_sendto,vtcp_recv,vtcp_recvfrom,如果通过vtcp_ctl(s,VTCP_CTL_SET_NONBIO,&nonbio)设置了非阻塞模式
VTCP_ERROR_WOULDBLOCK: 表示操作被阻挡无法完成,在采用 QIO 模型设置为非阻塞模式应忽略该错误,用过vtcp_qio_set继续提交事件请求。