关于TCP连接的问题,第一次接收数据成功之后,第二次就断开了

有木有大神指导TCP连接自动断开时怎么回事,我用一个定时器循环执行接收发送消息的动作 但是一直不成功 第一次数据接收成功之后 第二次就失败了 后面发现是第二次的时候连接断开了 有木有大神指点一下啊图片说明

3个回答

接收数据需要循环接收

sinat_35792048
sinat_35792048 嗯嗯 谢谢大神
接近 4 年之前 回复
huang461072830
小程序员 回复sinat_35792048: 是的,你这个recv执行完就退出了,而客户端再发送数据的时候是发送到缓冲区,并不主动触发事件,需要你去recv主动从缓冲区读取数据
接近 4 年之前 回复
sinat_35792048
sinat_35792048 也就是说recv必须是在类似于while(1)一样的语句里吗
接近 4 年之前 回复

放在while语句里 最好再加上select 这样cpu不会跑太高

重复connect了,connect一次后,通过连接的socket循环读,即connect成功一次后,后续定时器到只需要read。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问