社区
C语言
帖子详情
怎么判断socket断了?
zhvfeng
2004-03-24 02:00:18
client和server连接成功后,在client发数据前,我将server断掉,然后client调用下面方法发送数据
totalSend = send(csocket->fd, (const void*)&n_length, sizeof(int), 0);
printf("totalSend %d\n", totalSend);
为什么打印出来的totalSend等于sizeof(int),连接已经断掉了,返回值应该小于0才对呀?
...全文
35
6
打赏
收藏
怎么判断socket断了?
client和server连接成功后,在client发数据前,我将server断掉,然后client调用下面方法发送数据 totalSend = send(csocket->fd, (const void*)&n_length, sizeof(int), 0); printf("totalSend %d\n", totalSend); 为什么打印出来的totalSend等于sizeof(int),连接已经断掉了,返回值应该小于0才对呀?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
zhvfeng
2004-03-25
打赏
举报
回复
Thanks!
hongbo_liu
2004-03-24
打赏
举报
回复
可以通过信号捕捉到Broken Pipe的错误,然后在信号的处理函数里作你的事情,这样程序就不会退出。
如:
int iErrCount = 0;
void sigpipe(int sig){
if (iErrCount++ >= 10)
//报错,后续处理或者退出
//重新设置信号捕捉函数
signal(SIGPIPE,sigpipe);
return;
}
然后在程序调用SEND之前加上
signal(SIGPIPE,sigpipe);
如果你是在一个循环里调用SEND,则只需在最外层调用就可以了。
grooving
2004-03-24
打赏
举报
回复
if(csocket->fd == 0)
{
....
}
zhvfeng
2004-03-24
打赏
举报
回复
我只是想实现,当发送失败后,循环重新发送10次,如果还失败就退出.但现在是,发送失败后马上就推出了.然后控制台打印出Broken Pipe错误,我只是想知道能否捕到Broken Pipe错误?
gracian
2004-03-24
打赏
举报
回复
连上后第一次已经发出去了,以后再发就发现server断开报错.对你问题还是不很清楚
zhvfeng
2004-03-24
打赏
举报
回复
后续的发送会出现Broken Pipe错误,怎么能判断该错误并且从新建立连接.现在是调用后续send方法后,遇到Broken Pipe错误后,程序马上就自动推出了.send下面的语句都不执行了.
如何在C语言中
判
断
socket
是否已经
断
开
在WINDOWS下比较简单,可以使用FD_CLOSE事件
判
断
SOCKET
是否已经
断
开 view plaincopy to clipboardprint? bool Is
Socket
Closed(
SOCKET
client
Socket
) { bool ret = false; HANDLE closeEvent = WSACreateEvent();...
Android
Socket
连接(心跳检测,
断
线重连,状态监测等)
Android
Socket
连接,包含心跳检测,
断
线重连,数据发送等等 博客地址:http://blog.csdn.net/yuzhiqiang_1993/article/details/78094909
c#心跳连接实时检测网络通
断
情况
实时检测网络的通
断
情况,以实现网络的无缝重连
怎样实时
判
断
socket
连接状态?
对端正常close
socket
,或者进程退出(正常退出或崩溃),对端系统正常关闭 这种情况下,协议栈会走正常的关闭状态转移,使用epoll的话,一般要
判
断
如下几个情况 处理可读事件时,在循环read后,返回结果为0 ...
java
判
断
socket
_java
判
断
socket
是否
断
开的方法
socket
类中有一个方法sendUrgentData,它会往输出流发送一个字节的数据,只要对方
Socket
的SO_OOBINLINE属性没有打开,...java
判
断
远端是否
断
开了连接:try{
socket
.sendUrgentData(0xFF);}catch(Exception ex){reconn...
C语言
69,371
社区成员
243,082
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章