Python之简单Socket编程
2024-09-06 13:30:57
Socket编程这块儿还是比较重要的,记录一下:实现服务器端和客户端通信(客户端发送系统指令,如ipconfig等,服务器端执行该指令,然后将指令返回结果给客户端再传过去,设置一次最多直接收1024字节,如果一个文件大于1024字节,就先存储起来,等到全部接收完成再一次性打印出来),代码如下:
服务器端:
客户端:
粘包问题
当两条.send()语句连着执行时,因为两条语句连着执行,所以有可能两天信息连在一起发出去,造成粘包,这是在两条.send()语句中间写一个time.sleep(0.5)
让他睡0.5秒,可以解决粘包问题,但是如果是那种实时数据,有会造成信息延迟,在很多情况下这是不被允许的.
这时还有另外一个办法,就是在两次send之间插入一次.recv()语句,让服务器端再接收到客户端发来的第一次数据使立即向客户端返回一次确认,
客户端在收到确认后才会进行第二次发送,这样就解决了粘包问题.
最新文章
- Angular JS 学习之Bootstrap
- Oracle(创建序列)
- 批处理文件指定jre路径启动java桌面应用程序
- java 28 - 1 设计模式 之 面向对象思想设计原则和模版设计模式概述
- uC/OS II原理分析及源码阅读(一)
- 基于zepto的插件之移动端无缝向上滚动并上下触摸滑动
- 备用帖子1Shell(Shell R语言)
- LApacheMP基础环境搭建
- jQuery无缝滚动插件
- Eclipse常用功能
- You don't seem to have 'make' or 'gmake' in your PATH
- Android Studio中配置及使用OpenCV示例
- 数值标记问题 离线+树状数组 HDU 3938 + HDU 3333
- Linux输入子系统(一) _驱动编码
- Nodejs进阶:crypto模块中你需要掌握的安全基础
- IDM使用入门
- 我的webstorm 使用总结
- linux 最为常用的命令
- Hdoj 2046.骨牌铺方格 题解
- Bootstrap -- 文件上传插件File Input的使用