CSDN论坛 > Linux/Unix社区 > 应用程序开发区

(请高手救命啊!在线等)Socket Send的时候,不停的得到EINTR错误返回, 请问是为什么? [问题点数:100分,结帖人kkong2000]

Bbs1
本版专家分:29
结帖率 100%
CSDN今日推荐
Bbs1
本版专家分:29
Bbs7
本版专家分:21694
Blank
红花 2003年1月 Linux/Unix社区大版内专家分月排行榜第一
2002年12月 Linux/Unix社区大版内专家分月排行榜第一
2002年8月 Linux/Unix社区大版内专家分月排行榜第一
2002年2月 专题开发/技术/项目大版内专家分月排行榜第一
2001年7月 专题开发/技术/项目大版内专家分月排行榜第一
Blank
黄花 2010年8月 Linux/Unix社区大版内专家分月排行榜第二
2010年7月 Linux/Unix社区大版内专家分月排行榜第二
Blank
蓝花 2010年9月 Linux/Unix社区大版内专家分月排行榜第三
2003年7月 Linux/Unix社区大版内专家分月排行榜第三
2002年3月 专题开发/技术/项目大版内专家分月排行榜第三
2001年8月 专题开发/技术/项目大版内专家分月排行榜第三
Bbs1
本版专家分:29
Bbs7
本版专家分:21694
Blank
红花 2003年1月 Linux/Unix社区大版内专家分月排行榜第一
2002年12月 Linux/Unix社区大版内专家分月排行榜第一
2002年8月 Linux/Unix社区大版内专家分月排行榜第一
2002年2月 专题开发/技术/项目大版内专家分月排行榜第一
2001年7月 专题开发/技术/项目大版内专家分月排行榜第一
Blank
黄花 2010年8月 Linux/Unix社区大版内专家分月排行榜第二
2010年7月 Linux/Unix社区大版内专家分月排行榜第二
Blank
蓝花 2010年9月 Linux/Unix社区大版内专家分月排行榜第三
2003年7月 Linux/Unix社区大版内专家分月排行榜第三
2002年3月 专题开发/技术/项目大版内专家分月排行榜第三
2001年8月 专题开发/技术/项目大版内专家分月排行榜第三
Bbs1
本版专家分:5
Bbs1
本版专家分:29
Bbs1
本版专家分:29
Bbs9
本版专家分:68442
Blank
铜牌 2006年4月 总版技术专家分月排行榜第三
Blank
红花 2008年8月 Linux/Unix社区大版内专家分月排行榜第一
2008年7月 Linux/Unix社区大版内专家分月排行榜第一
2006年7月 Linux/Unix社区大版内专家分月排行榜第一
2006年5月 Linux/Unix社区大版内专家分月排行榜第一
2006年4月 Linux/Unix社区大版内专家分月排行榜第一
2006年3月 Linux/Unix社区大版内专家分月排行榜第一
2006年2月 Linux/Unix社区大版内专家分月排行榜第一
2006年1月 Linux/Unix社区大版内专家分月排行榜第一
2004年3月 Linux/Unix社区大版内专家分月排行榜第一
2004年2月 Linux/Unix社区大版内专家分月排行榜第一
2004年1月 Linux/Unix社区大版内专家分月排行榜第一
2003年12月 Linux/Unix社区大版内专家分月排行榜第一
2003年11月 Linux/Unix社区大版内专家分月排行榜第一
2003年10月 Linux/Unix社区大版内专家分月排行榜第一
2003年9月 Linux/Unix社区大版内专家分月排行榜第一
2003年8月 Linux/Unix社区大版内专家分月排行榜第一
Blank
黄花 2003年11月 C/C++大版内专家分月排行榜第二
2006年6月 Linux/Unix社区大版内专家分月排行榜第二
2003年7月 Linux/Unix社区大版内专家分月排行榜第二
Blank
蓝花 2005年12月 Linux/Unix社区大版内专家分月排行榜第三
Bbs7
本版专家分:21694
Blank
红花 2003年1月 Linux/Unix社区大版内专家分月排行榜第一
2002年12月 Linux/Unix社区大版内专家分月排行榜第一
2002年8月 Linux/Unix社区大版内专家分月排行榜第一
2002年2月 专题开发/技术/项目大版内专家分月排行榜第一
2001年7月 专题开发/技术/项目大版内专家分月排行榜第一
Blank
黄花 2010年8月 Linux/Unix社区大版内专家分月排行榜第二
2010年7月 Linux/Unix社区大版内专家分月排行榜第二
Blank
蓝花 2010年9月 Linux/Unix社区大版内专家分月排行榜第三
2003年7月 Linux/Unix社区大版内专家分月排行榜第三
2002年3月 专题开发/技术/项目大版内专家分月排行榜第三
2001年8月 专题开发/技术/项目大版内专家分月排行榜第三
Bbs7
本版专家分:21694
Blank
红花 2003年1月 Linux/Unix社区大版内专家分月排行榜第一
2002年12月 Linux/Unix社区大版内专家分月排行榜第一
2002年8月 Linux/Unix社区大版内专家分月排行榜第一
2002年2月 专题开发/技术/项目大版内专家分月排行榜第一
2001年7月 专题开发/技术/项目大版内专家分月排行榜第一
Blank
黄花 2010年8月 Linux/Unix社区大版内专家分月排行榜第二
2010年7月 Linux/Unix社区大版内专家分月排行榜第二
Blank
蓝花 2010年9月 Linux/Unix社区大版内专家分月排行榜第三
2003年7月 Linux/Unix社区大版内专家分月排行榜第三
2002年3月 专题开发/技术/项目大版内专家分月排行榜第三
2001年8月 专题开发/技术/项目大版内专家分月排行榜第三
Bbs1
本版专家分:29
Bbs4
本版专家分:1166
Bbs7
本版专家分:21694
Blank
红花 2003年1月 Linux/Unix社区大版内专家分月排行榜第一
2002年12月 Linux/Unix社区大版内专家分月排行榜第一
2002年8月 Linux/Unix社区大版内专家分月排行榜第一
2002年2月 专题开发/技术/项目大版内专家分月排行榜第一
2001年7月 专题开发/技术/项目大版内专家分月排行榜第一
Blank
黄花 2010年8月 Linux/Unix社区大版内专家分月排行榜第二
2010年7月 Linux/Unix社区大版内专家分月排行榜第二
Blank
蓝花 2010年9月 Linux/Unix社区大版内专家分月排行榜第三
2003年7月 Linux/Unix社区大版内专家分月排行榜第三
2002年3月 专题开发/技术/项目大版内专家分月排行榜第三
2001年8月 专题开发/技术/项目大版内专家分月排行榜第三
Bbs1
本版专家分:29
Bbs2
本版专家分:140
Bbs1
本版专家分:29
Bbs9
本版专家分:68442
Blank
铜牌 2006年4月 总版技术专家分月排行榜第三
Blank
红花 2008年8月 Linux/Unix社区大版内专家分月排行榜第一
2008年7月 Linux/Unix社区大版内专家分月排行榜第一
2006年7月 Linux/Unix社区大版内专家分月排行榜第一
2006年5月 Linux/Unix社区大版内专家分月排行榜第一
2006年4月 Linux/Unix社区大版内专家分月排行榜第一
2006年3月 Linux/Unix社区大版内专家分月排行榜第一
2006年2月 Linux/Unix社区大版内专家分月排行榜第一
2006年1月 Linux/Unix社区大版内专家分月排行榜第一
2004年3月 Linux/Unix社区大版内专家分月排行榜第一
2004年2月 Linux/Unix社区大版内专家分月排行榜第一
2004年1月 Linux/Unix社区大版内专家分月排行榜第一
2003年12月 Linux/Unix社区大版内专家分月排行榜第一
2003年11月 Linux/Unix社区大版内专家分月排行榜第一
2003年10月 Linux/Unix社区大版内专家分月排行榜第一
2003年9月 Linux/Unix社区大版内专家分月排行榜第一
2003年8月 Linux/Unix社区大版内专家分月排行榜第一
Blank
黄花 2003年11月 C/C++大版内专家分月排行榜第二
2006年6月 Linux/Unix社区大版内专家分月排行榜第二
2003年7月 Linux/Unix社区大版内专家分月排行榜第二
Blank
蓝花 2005年12月 Linux/Unix社区大版内专家分月排行榜第三
Bbs1
本版专家分:29
Bbs1
本版专家分:29
Bbs9
本版专家分:68442
Blank
铜牌 2006年4月 总版技术专家分月排行榜第三
Blank
红花 2008年8月 Linux/Unix社区大版内专家分月排行榜第一
2008年7月 Linux/Unix社区大版内专家分月排行榜第一
2006年7月 Linux/Unix社区大版内专家分月排行榜第一
2006年5月 Linux/Unix社区大版内专家分月排行榜第一
2006年4月 Linux/Unix社区大版内专家分月排行榜第一
2006年3月 Linux/Unix社区大版内专家分月排行榜第一
2006年2月 Linux/Unix社区大版内专家分月排行榜第一
2006年1月 Linux/Unix社区大版内专家分月排行榜第一
2004年3月 Linux/Unix社区大版内专家分月排行榜第一
2004年2月 Linux/Unix社区大版内专家分月排行榜第一
2004年1月 Linux/Unix社区大版内专家分月排行榜第一
2003年12月 Linux/Unix社区大版内专家分月排行榜第一
2003年11月 Linux/Unix社区大版内专家分月排行榜第一
2003年10月 Linux/Unix社区大版内专家分月排行榜第一
2003年9月 Linux/Unix社区大版内专家分月排行榜第一
2003年8月 Linux/Unix社区大版内专家分月排行榜第一
Blank
黄花 2003年11月 C/C++大版内专家分月排行榜第二
2006年6月 Linux/Unix社区大版内专家分月排行榜第二
2003年7月 Linux/Unix社区大版内专家分月排行榜第二
Blank
蓝花 2005年12月 Linux/Unix社区大版内专家分月排行榜第三
Bbs1
本版专家分:29
Bbs9
本版专家分:68442
Blank
铜牌 2006年4月 总版技术专家分月排行榜第三
Blank
红花 2008年8月 Linux/Unix社区大版内专家分月排行榜第一
2008年7月 Linux/Unix社区大版内专家分月排行榜第一
2006年7月 Linux/Unix社区大版内专家分月排行榜第一
2006年5月 Linux/Unix社区大版内专家分月排行榜第一
2006年4月 Linux/Unix社区大版内专家分月排行榜第一
2006年3月 Linux/Unix社区大版内专家分月排行榜第一
2006年2月 Linux/Unix社区大版内专家分月排行榜第一
2006年1月 Linux/Unix社区大版内专家分月排行榜第一
2004年3月 Linux/Unix社区大版内专家分月排行榜第一
2004年2月 Linux/Unix社区大版内专家分月排行榜第一
2004年1月 Linux/Unix社区大版内专家分月排行榜第一
2003年12月 Linux/Unix社区大版内专家分月排行榜第一
2003年11月 Linux/Unix社区大版内专家分月排行榜第一
2003年10月 Linux/Unix社区大版内专家分月排行榜第一
2003年9月 Linux/Unix社区大版内专家分月排行榜第一
2003年8月 Linux/Unix社区大版内专家分月排行榜第一
Blank
黄花 2003年11月 C/C++大版内专家分月排行榜第二
2006年6月 Linux/Unix社区大版内专家分月排行榜第二
2003年7月 Linux/Unix社区大版内专家分月排行榜第二
Blank
蓝花 2005年12月 Linux/Unix社区大版内专家分月排行榜第三
Bbs1
本版专家分:29
Bbs9
本版专家分:68442
Blank
铜牌 2006年4月 总版技术专家分月排行榜第三
Blank
红花 2008年8月 Linux/Unix社区大版内专家分月排行榜第一
2008年7月 Linux/Unix社区大版内专家分月排行榜第一
2006年7月 Linux/Unix社区大版内专家分月排行榜第一
2006年5月 Linux/Unix社区大版内专家分月排行榜第一
2006年4月 Linux/Unix社区大版内专家分月排行榜第一
2006年3月 Linux/Unix社区大版内专家分月排行榜第一
2006年2月 Linux/Unix社区大版内专家分月排行榜第一
2006年1月 Linux/Unix社区大版内专家分月排行榜第一
2004年3月 Linux/Unix社区大版内专家分月排行榜第一
2004年2月 Linux/Unix社区大版内专家分月排行榜第一
2004年1月 Linux/Unix社区大版内专家分月排行榜第一
2003年12月 Linux/Unix社区大版内专家分月排行榜第一
2003年11月 Linux/Unix社区大版内专家分月排行榜第一
2003年10月 Linux/Unix社区大版内专家分月排行榜第一
2003年9月 Linux/Unix社区大版内专家分月排行榜第一
2003年8月 Linux/Unix社区大版内专家分月排行榜第一
Blank
黄花 2003年11月 C/C++大版内专家分月排行榜第二
2006年6月 Linux/Unix社区大版内专家分月排行榜第二
2003年7月 Linux/Unix社区大版内专家分月排行榜第二
Blank
蓝花 2005年12月 Linux/Unix社区大版内专家分月排行榜第三
Bbs2
本版专家分:284
Bbs9
本版专家分:68442
Blank
铜牌 2006年4月 总版技术专家分月排行榜第三
Blank
红花 2008年8月 Linux/Unix社区大版内专家分月排行榜第一
2008年7月 Linux/Unix社区大版内专家分月排行榜第一
2006年7月 Linux/Unix社区大版内专家分月排行榜第一
2006年5月 Linux/Unix社区大版内专家分月排行榜第一
2006年4月 Linux/Unix社区大版内专家分月排行榜第一
2006年3月 Linux/Unix社区大版内专家分月排行榜第一
2006年2月 Linux/Unix社区大版内专家分月排行榜第一
2006年1月 Linux/Unix社区大版内专家分月排行榜第一
2004年3月 Linux/Unix社区大版内专家分月排行榜第一
2004年2月 Linux/Unix社区大版内专家分月排行榜第一
2004年1月 Linux/Unix社区大版内专家分月排行榜第一
2003年12月 Linux/Unix社区大版内专家分月排行榜第一
2003年11月 Linux/Unix社区大版内专家分月排行榜第一
2003年10月 Linux/Unix社区大版内专家分月排行榜第一
2003年9月 Linux/Unix社区大版内专家分月排行榜第一
2003年8月 Linux/Unix社区大版内专家分月排行榜第一
Blank
黄花 2003年11月 C/C++大版内专家分月排行榜第二
2006年6月 Linux/Unix社区大版内专家分月排行榜第二
2003年7月 Linux/Unix社区大版内专家分月排行榜第二
Blank
蓝花 2005年12月 Linux/Unix社区大版内专家分月排行榜第三
匿名用户不能发表回复!
其他相关推荐
linux网络编程之慢系统调用被信号中断产生EINTR错误怎么解决总结
1、介绍慢系统调用 该术语适用于那些可能永远阻塞的系统调用。永远阻塞的系统调用是指调用永远无法返回,多数网络支持函数都属于这一类。如:若没有客户连接到服务器上,那么服务器的accept调用就会一直阻塞。 慢系统调用可以被永久阻塞,包括以下几个类别: (1)读写‘慢’设备(包括pipe,终端设备,网络连接等)。读时,数据不存在,需要等待;写时,缓冲区满或其他原因,需要等待。读写磁盘文件
EAGAIN、WOULDBLOCK、EINTR与非阻塞模式和长连接socket
EAGAIN、EWOULDBLOCK、EINTR与非阻塞 长连接 EWOULDBLOCK用于非阻塞模式,不需要重新读或者写 EINTR指操作被中断唤醒,需要重新读/写 在Linux环境下开发经常会碰到很多错误(设置errno),其中EAGAIN是其中比较常见的一个错误(比如用在非阻塞操作中)。 从字面上来看,是提示再试一次。这个错误经常出现在当应用程序进行一些非阻塞(non-blo
Linux编程下EAGAIN和EINTR宏的含义及处理
Linux中的EAGAIN含义   在Linux环境下开发经常会碰到很多错误(设置errno),其中EAGAIN是其中比较常见的一个错误(比如用在非阻塞操作中)。   linux下使用write\send发送数据报 EAGAIN : Resource temporarily unavailable 错   首先是我把套接字设置为异步的了,然后在使用write发送数据时采取的方式是循环发送大量的
Linux下非阻塞Socket发送错误返回
项目中使用原有的网络发送代码进行数据传输,发现总是发不过去,或者发过去一部分,非常纳闷。 经过仔细排查,是Socket的send函数调用结果处理不正确造成的。 原有代码: int SendData( char *data,int length ) { int ret; int cur_pos = 0; while(cur_pos < length) { ret = send(ha
socket函数一直返回-1的问题
今天遇到了一个SOCKET初始化的问题,运行平台在linux中,在windows中调试,就出现了socket一直返回-1的错误。 经网上查找后得以解决,解决办法是增加了两段代码,在windows中要使用socket,需要先注册。 以下为示例代码 //初始化TCP Result TcpClient_Init(int localPort) { //add by guoyong Use t
关于errno = EINTR的小结
如果read()读到数据为0,那么就表示文件读完了,如果在读的过程中遇到了中断则read()应该返回-1,同时置errno为EINTR。   因此判断read的条件如下: if <=0 { if==0 { 表示文件结束, 处理   } if(<0 && errno==EINTR) {   表示中断,处理  
recv函数返回值总结
函数原型:int recv( SOCKET s, char *buf, int  len, int flags) 功能:不论是客户还是服务器应用程序都用recv函数从TCP连接的另一端接收数据。 参数一:指定接收端套接字描述符; 参数二:指明一个缓冲区,该缓冲区用来存放recv函数接收到的数据; 参数三:指明buf的长度; 参数四 :一般置为0。
Socket 错误返回码
Socket error 0 - Directly send error  Socket error 10004 - Interrupted function call  Socket error 10013 - Permission denied  Socket error 10014 - Bad address  Socket error 10022 - Invalid argumen
socket函数返回值分析
服务端: 1 WSAStartup(版本,本机的最高版本) WSAStartup函数的第一个参数是加载WinSock库的版本,WSAStartup函数的第二个参数中设置使用的WinSock库的版本,当正确初始化时,WSAStartup会返回0。但我在WSAStartup函数的第一个参数中胡乱设置了一个版本号,WSAStartup仍然会返回0。 如果在WSAStartu
SIGPIPE信号--解决Linux socket中接收端退出导致发送端send退出问题
在Linux下测试,然后用C++写了客户端用千万级别数量的短链接进行压力测试.  但是服务器总是莫名退出,没有core文件. 最后问题确定为, 对一个对端已经关闭的socket调用两次write, 第二次将会生成SIGPIPE信号, 该信号默认结束进程. 具体的分析可以结合TCP的"四次握手"关闭. TCP是全双工的信道, 可以看作两条单工信道, TCP连接两端的两个端点各负责一条
关闭