社区
网络及通讯开发
帖子详情
[高级问题2]请问大家一个网络编程的方法问题?
佣工7001
2004-12-14 05:26:44
我的程序中采用TServerSocket和TClientSocket编程,NonBlocking方式。
问题是在某个时间我的Client程序需要向服务器连续发出两个命令,但是服务器端在一个包里面收到了!请问作过类似程序的大虾,如果不采用自己封包的格式,怎末能保证连续发出的包,对方分两次收到呢?
...全文
181
4
打赏
收藏
[高级问题2]请问大家一个网络编程的方法问题?
我的程序中采用TServerSocket和TClientSocket编程,NonBlocking方式。 问题是在某个时间我的Client程序需要向服务器连续发出两个命令,但是服务器端在一个包里面收到了!请问作过类似程序的大虾,如果不采用自己封包的格式,怎末能保证连续发出的包,对方分两次收到呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
佣工7001
2004-12-14
打赏
举报
回复
回 netsys2(来电!) ,这下有决心了,看来这能这样做了,多谢指点。
netsys2
2004-12-14
打赏
举报
回复
SOCKET编程中,你发的数据都是看成“数据流”的方式,
不管你是怎么发送,例如这次发10个,下次20,从接收者来看都是10+20+。。。。
因此为了区分每个包,你:
必须自定义应用层协议,通过包头自己来区分两个包!
这是全球SOCKET编程人员的标准用法!
我有个非标准做法:
每发一个包,SLEEP若干毫秒,对方就可以分开收了。
但这太影响效率了!
不推荐使用!
随便说一句,
为了提高传输效率,TCP层专门有个Nagle算法,用于将小包组成大包再发送。
因此不要再乱想了,
记住:SOCKET的数据是数据流,有头无尾,你要判断尾巴,就得自己设计!
Maconel
2004-12-14
打赏
举报
回复
呵呵,没做过,只是提供一个思路。
Maconel
2004-12-14
打赏
举报
回复
client发完一个包后,等待server的确认信息,然后发下一个包
Java
网络编程
第三版.pdf
8. **
高级
主题**:包括
高级
网络编程
技术,如网络负载均衡、分布式系统、网络性能优化等。 9. **错误处理与调试**:学习如何处理
网络编程
中常见的异常,以及如何调试网络应用程序,提高代码的健壮性。 10. **最新...
linux入门到学懂
高级
编程书集
2. **《Linux
网络编程
》**:
网络编程
在现代软件开发中占据了重要地位。这本书将教你如何在Linux环境下进行网络通信,包括套接字编程、TCP/IP协议栈、并发服务器的实现等,帮助你构建高性能的网络应用。 3. **...
Python3.2.3官方文档(中文版)高清完整PDF
文档中提到对Python标准库的概览,这表明Python作为
一个
高级
语言,通过其丰富的标准库来支持快速开发和程序运行。 9. 中文文档的重要性: 文档是由译者翻译成中文的,表明在非英文母语的地区,中文文档对Python的...
WPF仿QQ关闭源码
【标题】"WPF仿QQ关闭源码"指的是在Windows Presentation Foundation (WPF)框架下,通过编程实现
一个
类似于腾讯QQ的窗口关闭效果的代码示例。WPF是微软推出的一种用于构建Windows桌面应用程序的技术,它提供了丰富的...
C++经典程序
描述中提到的“一些经典的例程”可能包括了基础的输入输出操作、数据结构实现、算法演示以及更
高级
的主题如多线程、
网络编程
等。 首先,C++是C语言的扩展,它引入了类和对象的概念,从而实现了面向对象编程(OOP)...
网络及通讯开发
1,317
社区成员
8,874
社区内容
发帖
与我相关
我的任务
网络及通讯开发
C++ Builder 网络及通讯开发
复制链接
扫一扫
分享
社区描述
C++ Builder 网络及通讯开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章