易截截图软件、单文件、免安装、纯绿色、仅160KB

关于linux c socket send()recv()的问题

问题1 socket断开后(包括服务端主动断开或网络原因断开)再send()会不会溢出
问题2 int a=recv()返回int =0或int=-1代表什么意思
谢谢
1、失败了。

2、0代表成功。-1代表出错

别来误导我

引用
别来误导我

楼主给我们讲讲呗

引用
引用 2 楼 xiaoyuaccp 的回复:
别来误导我

楼主给我们讲讲呗

现在我测试的结果是 socket断开后再send()会溢出 recv return 0是socket已断开 -1不知道是什么情况 请高手给讲下啊

引用
问题1 socket断开后(包括服务端主动断开或网络原因断开)再send()会不会溢出
问题2 int a=recv()返回int =0或int=-1代表什么意思
谢谢


1.如果是长连接,一般用心跳包来监听对面是否断开。若断开后,第一次调用send,数据应该会写入缓冲区,我不觉得会溢出,你说的溢出是啥意思。但是之后,再send应该就会返回失败了。



2.这个看你是阻塞模式,还是非阻塞模式。

以前有位GG已经想的很详细了,可以参考

http://topic.csdn.net/u/20090428/13/4fd54186-d70a-4ff7-9b57-4af83f225e90.html

问题一还可以参考下:

http://light6891.blog.163.com/blog/static/9696290920096253354467/

引用
引用楼主 xiaoyuaccp 的回复:
问题1 socket断开后(包括服务端主动断开或网络原因断开)再send()会不会溢出
问题2 int a=recv()返回int =0或int=-1代表什么意思
谢谢


1.如果是


相关问答:

linux环境下gethostbyname函数问题 - C/C++ / C语言

写了个测试程序如下
   
  struct hostent *hp; 
char AlarmDevIP[20];  
  int x2;

hp = gethostbyname("www.google.com");
if (hp)
{ ......

C/C++里屏shift+f10键要怎么写! - C/C++ / C++ 语言

SHIFT加F10与那个键右ctrl边上的那个键功能一样,想屏这个
但不知要怎么写那个组合键!
有没哪个大侠放一段这个的代码或写一段
http://topic.csdn.net/u/20090609/15/7dc9fb70-243f-4070-9cfd-34e48b66e6c6.html ......

execl怎么调用java程序 - C/C++ / C语言

如题,C/C++中的execl怎么调用写好的java程序,
execl("/opt/java1.5/bin/java","MyClass",NULL);
这样的不行哦。

不会.

运行java程序
找工具查看一下那个程序的命令行

搜索下:jni ......

[HJ_34] 在HTML网页下,用JS 打开LINUX下的记事本

如题,在WINDOWS底下的CODE会,但在LINUX下不知道如何实现,JS的代码应该是不一样的。 求教。

分不够再加。

http://topic.csdn.net/u/20100113/08/17ba1e71-4c33-43f6-91a5-0e031c86e5ed.html
linux ......

FCK上传文件到linux服务器问题 - Java / Java EE

请我用FCK上传文件,在本地的windows机上测试可以,但部署到linux服务器上就上传不了文件,上传文件时一直卡在那里。望各位大虾指点,谢谢!
路过,帮你顶一下。。。。。。。。。。。。。。

上传文件的路径问题, ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号