社区
网络编程
帖子详情
请教个小问题!关于如何测试某个socket是否处在连接状态?我给出一个笨方法,等待建议
lizhenzhou
2005-02-24 04:21:58
我是这样做的,可以吗?有什么更好的方法测试socket是否好用!多谢,大家!
while(1)
{
iRet = send(ServerSocket,"",0,0);
if(iRet == SOCKET_ERROR)
{
连接socket
}
else
{
通过socket,发送message
}
}
...全文
256
16
打赏
收藏
请教个小问题!关于如何测试某个socket是否处在连接状态?我给出一个笨方法,等待建议
我是这样做的,可以吗?有什么更好的方法测试socket是否好用!多谢,大家! while(1) { iRet = send(ServerSocket,"",0,0); if(iRet == SOCKET_ERROR) { 连接socket } else { 通过socket,发送message } }
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
16 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
lizhenzhou
2005-03-03
打赏
举报
回复
感谢各位,这个问题是初学者很容易碰到的问题啊!
现在boss又在让我发文件啦!困难啊。
我用了2个socket,一个接受文件传输命令,一个接收文件数据。文件数据先发文件属性,再发文件内容,32k一发,这样做可以么
flight_lcf
2005-03-02
打赏
举报
回复
粘包:在每包加入自定义格式,包括长度等等,在解包时,按长度进行读取,循环读取粘到一起的多包不就可以了吗?比如接收到包长为100,是由二包组成,包一为40,包二为60,每包前都有本包长度,这样还解析不出来吗?
明天去抢劫
2005-03-02
打赏
举报
回复
BOOL CSockThread::IsConnected(SOCKET s)
{
int nRet = 0;
struct fd_set Fd_Recv;
struct timeval Time_Recv;
memset(&Fd_Recv, 0, sizeof(struct fd_set));
FD_CLR(s, &Fd_Recv);
FD_SET(s, &Fd_Recv);
Time_Recv.tv_sec = 0;
Time_Recv.tv_usec = 0;
nRet = select(s, &Fd_Recv, NULL, NULL, &Time_Recv);
return (nRet == 0);
}
Practise_Think
2005-03-01
打赏
举报
回复
select 模型也可以用心跳包的!!
lizhenzhou
2005-03-01
打赏
举报
回复
谢谢各位参与,我这样做占用系统资源很大,不要这样做哦!另外一个问题就是,即使在每个包加头,加check,也是会有粘包的问题。
还定时发吧检测连接好。
socket怎么不提供一个检测连接状态的API呢!
谁给Gates打个电话,叫他给一个
zdleek
2005-02-28
打赏
举报
回复
如果发心跳包 通常需要对数据进行编码 就要要规定包的格式
pp_hotel
2005-02-28
打赏
举报
回复
select模型
gzqreder
2005-02-28
打赏
举报
回复
mark,向高人学习
jun_01
2005-02-28
打赏
举报
回复
每个包头都要加长度啊,这样就不怕粘包了
lizhenzhou
2005-02-28
打赏
举报
回复
select模型,怎么可以测试连接状态。多多解释阿
hxzb7215191
2005-02-25
打赏
举报
回复
关注..
的确,如果发心跳包,也会和我们的数据包弄到一块.
这个要如何区别呢?
lizhenzhou
2005-02-25
打赏
举报
回复
谢谢各位!
再问,如果短时间内不断发送数据包,会和正常有意义的数据包连在一起,造成“粘包”,向我现在这样发送空数据包可以吗?send(socketID,“”,0,0);
clovexmu
2005-02-24
打赏
举报
回复
每隔一段时间客户端向服务器端发送一个数据包,如果服务器在给定时间内检测不到这个数据包,则认为网络超时。
TCP/ip协议本身并没有进行检测网络是否保持连接的机制,所以需要在应用层自己写代码检验。
gdy119
2005-02-24
打赏
举报
回复
心跳包,也是发送数据包,是c/s双方都在指定的时间内
互相发送数据报,验证网络是否保持连接
lizhenzhou
2005-02-24
打赏
举报
回复
心跳包,是什么意思啊?请fisker0303解释阿,多谢
fisker0303
2005-02-24
打赏
举报
回复
可以用发心跳包的方式。
Socket
编程快速入门
本课程将理本课程将理啊 论结合实践,带你从零开始,系统学习
Socket
编程技术,让
Socket
的学习不再那么零散与难以掌握,同时会提炼出
Socket
网络传输的核心思想与构架,并带你踩坑出坑,增加你的分析与处理
问题
的啊aas...
TCP基础详解:三次握手、四次挥手相关
文章目录前言正文01 TCP 基本认识02 TCP
连接
建立03 TCP
连接
断开04
Socket
编程巨人的肩膀唠叨唠叨读者问答 前言 关于 TCP 三次握手和四次挥手的面试题型: TCP 基本认识 TCP
连接
建立 TCP
连接
断开 ...
计网协议总结
PING路由选择协议内部网关协议RIP协议OSPF协议外部网关协议运输层进程间通信等概念用户数据报协议UDP特点首部格式传输控制协议TCP特点
连接
停止
等待
协议首部格式TCP可靠传输的实现滑动窗口流量控制拥塞控制
连接
管理 ...
中兴面试题
1>某人在某个市场某个商家买了某台电脑,请用你熟悉的计算机语言表达出里面的关系. 其中有商家类,买家类,商品类。还要有买
方法
,卖
方法
。 2>
一个
完整的单例模式 3>曹操南下攻打刘备,刘备派关羽守锦州,关羽...
中兴笔试与面试经验总结
1>某人在某个市场某个商家买了某台电脑,请用你熟悉的计算机语言表达出里面的关系. 其中有商家类,买家类,商品类。还要有买
方法
,卖
方法
。 2>
一个
完整的单例模式 3>曹操南下攻打刘备,刘备派关羽守锦州,关羽派张飞...
网络编程
18,356
社区成员
64,214
社区内容
发帖
与我相关
我的任务
网络编程
VC/MFC 网络编程
复制链接
扫一扫
分享
社区描述
VC/MFC 网络编程
c++
c语言
开发语言
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章