社区
网络编程
帖子详情
用阻塞的socket如何进行超时重传?
leon3867
2004-09-02 07:21:35
如果协议是发送一条消息然后等待一条消息,用的是阻塞的recv()调用,如果定期内对方没有应答,该如何改变进程的阻塞状态?使其进入错误处理?
...全文
182
2
打赏
收藏
用阻塞的socket如何进行超时重传?
如果协议是发送一条消息然后等待一条消息,用的是阻塞的recv()调用,如果定期内对方没有应答,该如何改变进程的阻塞状态?使其进入错误处理?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
comman_wang
2004-09-02
打赏
举报
回复
采用超时机制,不错错误处理要考虑周到。
gdy119
2004-09-02
打赏
举报
回复
可以设置 socket发送和接受超时的设置:
int recvtime=5000;
setsockopt(socket,SOL_SOCKET,SO_RCVTIMEO,(const char*)&recvtime,sizeof(recvtime))
setsockopt(socket,SOL_SOCKET,SO_SENDTIMEO,(const char*)&recvtime,sizeof(recvtime))
windows下设置
socket
的connect
超时
变相的实现connect的
超时
,我要讲的就是这个方法,原理上是这样的: 1.建立
socket
2.将该
socket
设置为非
阻塞
模式 3.调用connect() 4.使用select()检查该
socket
描述符是否可写(注意,是可写) 5.根据select()返回的结果判断connect()结果 6.将
socket
设置为
阻塞
模式(如果你的程序不需要用
阻塞
模式的,这步就省了,不过一般情况下都是用
阻塞
模式的,这样也容易管理)
socket
非
阻塞
超时
设置
socket
非
阻塞
超时
设置可编译。VC6
PHP中
Socket
连接及读写数据
超时
问题分析
本文实例讲述了PHP中
Socket
连接及读写数据
超时
问题。分享给大家供大家参考,具体如下: 虽然PHP中对fsockopen()方法有连接
socket
的
超时
参数,但是没有类似C中的连接成功后对数据的读写
超时
参数设置。没关系,PHP中对stream提供了一系列的方法以防止
超时
stream_set_blocking( $fp , false ) 设置数据流为
阻塞
模式,以防止数据没读完就退出 如果模式为 false, 给定的
socket
描述符将切换到非块模式, 如果为 true, 则切换到块模式. 这个效果类似于 fgets() 从
socket
读的情况. 在非块模式 fgets() 将
Linux下多线程的
阻塞
模式下的
socket
编程
Linux下多线程的
阻塞
模式下的
socket
编程,简单实用,可以重用。
librtmp长时间直播
socket
连接断开的原因
librtmp长时间直播
socket
连接断开的原因 librtmp长时间直播
socket
连接断开的原因 librtmp长时间直播
socket
连接断开的原因 librtmp长时间直播
socket
连接断开的原因
网络编程
18,356
社区成员
64,214
社区内容
发帖
与我相关
我的任务
网络编程
VC/MFC 网络编程
复制链接
扫一扫
分享
社区描述
VC/MFC 网络编程
c++
c语言
开发语言
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章