问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

socket编程,send recv函数 非诚勿扰啊

发布网友 发布时间:2023-09-21 05:58

我来回答

3个回答

热心网友 时间:2024-11-17 04:38

这取决于你使用的协议。

一般使用SOCKET都是使用TCP协议socket(AF_INET, SOCK_STREAM, 0),或者是UDP协议socket(AF_INET, SOCK_DGRAM, 0).当然还有原始套接口和UNIX域协议,这个就不扯远了。

如果是TCP,系统自动完成工作有:发送,对方接受,对方返回确认。如果第一次发送失败,会自动重传直到确实无法发送到目的地(这个依套接口选项设定,不扯太远)。

如果是UDP,发送方只把数据包送出,不重传,不确认,也就是接受方不返回确认信息。

至于你这个问题“现在是send了100个1k字节的包,不知道什么时候可以停止recv做别的事”,这个问让我有点疑惑,因为什么时候停止recv这要看编程者的意愿,因为你是发送了100个1K包,那么你连续调用100次recv,如果你不设置非阻塞式I/O,则在100个包到达之前,你的recv不会停止。

另外我设想另一种情况,也可能是你想要的答案:
因为100个包全部接受到可能存在风险,如果你调用100次recv,如果其中丢失了1个包(UDP风险更大,TCP虽然会从传,但也只是会尝试几次),那么你的进程可能会永远阻塞在recv中,一般的做法是:将套接口设置为非阻塞式,用select函数给套接口加上限时,如果超过规定的时间没有收到100个包,则进行错误处理。

热心网友 时间:2024-11-17 04:38

一般是写一个线程专门处理 recv

while(true)
{
recv();
...
}
如果不用多线程,就不用想做别的事。
另外,不必要考虑什么重传。客户端,服务端都要根据recv的内容来决定干什么。

停止 recv,完全可以按自己的设计思路做,比如,recv到一个"end"字符串时,就停止。然后做其它事情。

热心网友 时间:2024-11-17 04:38

大概想到的方案有:
异步
回调
多线程
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
手机导航地图语音怎么下载 如何分别真金和仿金首饰 怎样区分真金和仿金首饰呢 小学生新年晚会主持人的串词!!(不要太多)急 大大后天就需要了!!!_百度... 周年晚会策划公司 奥格瑞玛传送门大厅在哪 奥格瑞玛传送门大厅怎么走 锻炼颈椎的几个动作 水多久能结冰 冰能在多长时间内形成 请问水低于0度会结冰吗? 如何防止脱发严重 两个怎么同时登录一部手机 Linux中C语言的一个函数的源代码:socket 编程中的 recv() 函数... 如何在一台手机上登录两个? ...用手直接接触鸡蛋,要让鸡蛋浮起来,你有哪些方法? 悦薇乳液非卖品是正品吗 刺激战场体验服! 焦作碧桂园天麓府售楼热线是多少? 梦见观察宇宙的预兆 梦见观察别人,被观察 星子县桃花源风景名胜区管理处怎么样? 江西九江庐山旅游传销 我家狗狗爱反胃是啥回事,反了又吃进去,或者有些不吃 电视机用哪个app看电视直播? 我失恋了,我很想忘记她,可为什么总是忘不了,越想她就越难受,那一刻我... ...她,时间长了就睡不着觉,吃不下饭忘不了她怎么办? ...她,特别是一个人的时候,一想她就失眠,忘不了她怎么办 分手好几个月了,总是忘不了她,总是无意间回想起以前的事情,内心沉溺在... 忘不了前女友怎么办,每晚睡觉一闭眼,满脑子都是她,失眠,怎么办? 厦门考驾照为何要打学时,,,什么地方不用打学时 如何在快手极速版中设置青少年模式 C语言 socket编程 客户端只send一次 但是服务器会循环执行这条命令... 一部手机可以同时登录两个吗? 如何在手机上同时登陆两个? 一个手机如何同时登陆两个? 物理变压器的题,请解答一下,要有过程,为什么选D? 求教高二物理变压器问题 物理理想变压器这题求解析. 孩子上幼儿园,父母不能及时接送怎么办? 没时间接送孩子上学怎么办? 家长没时间带孩子怎么办? 马上消费成立的马上科技基金是做什么的? 孕妇旅客需要填写交接单嘛 梦见削苹果是什么意思 烟雨江湖多少级可以上替补 游戏时画面撕裂会损伤显示器吗? 我的N8改了一次字体后怎么就改不了了呢? 9月要到泰国自由行,第一次去要走9天左右,走曼谷-普吉岛(或芭提雅)二选... 九月份去泰国自助游···推荐 9月份泰国10天游,清迈,曼谷,普吉岛是重点要去的地方。路线介绍以及泰国... 如何在一台手机上登录两个?