首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

套接字有关问题,很

2013-10-27 
套接字问题,很急发现客户端发送的字符串不显示了,为何[解决办法]请检查所有函数的返回值!不知道有多少前人

套接字问题,很急

发现客户端发送的字符串不显示了,为何
[解决办法]
请检查所有函数的返回值!

不知道有多少前人掉在TCP Socket
send(人多)send(病少)send(财富)
recv(人多病)recv(少财富)
陷阱里面啊!
http://topic.csdn.net/u/20120210/09/51109ed0-07b9-41f2-b487-a51597f2ca01.html

[解决办法]
混点分,简单点说,
你accept连接后,没有保存创建的链接。
然后你遍历所有的套接字,一个一个接受数据,套接字,实际是文件编号
0,1,2, 分别是标准输入输出 什么的 。 然后你的套接字一般是3.4.5, 但,可能同时系统有其他socket程序,她们的套接字id为9 ,10 ,11 。
那么,你每次遍历的时候,有可能把其他进程的套接字也拿来recv,就会异常
  所以,你要保证你每次遍历的套接字都是你自己accept的,同时是有数据的,
同时, 即便你套接字有数据,你接收的时候,也要判断一下是否接收被中断,如eintr
 另外,即便你以上所有问题都解决,还存在你总是没有释放套接字资源的问题,你连续的连几个小时,估计系统会崩掉

热点排行