TCP作为常用的网络传输协议,数据流解析是网络应用开发人员永远绕不开的一个问题。 TCP数据传输是以无边界的数据流传输形式,所谓无边界是指数据发送端发送的字节数,在数据接收端接受时并不一定等于发送的字节数,可能会出现粘包情况。 一、TCP粘包情况: 1. 发送端发送了数量比较的数据,接收端读取数据时 ...
分类:
其他好文 时间:
2017-09-06 20:18:25
阅读次数:
228
1 基于UDP套接字1.1 介绍 udp是无连接的,是数据报协议,先启动哪段都不会报错 udp服务端 udp客户端 1.2 基本实例1.2.1 服务端 1.2.2 客户端 1.3 udp不会粘包 udp是基于数据报协议,发送一份信息,有完整的报头的主题,不会像tcp那样基于数据流的,没有开头、没有结 ...
分类:
编程语言 时间:
2017-08-30 20:49:01
阅读次数:
300
1.基于udp的套接字 (1)udp不会产生粘包现象 (2)udp是无链接的,先启动哪一端都不会报错。 (3)upd是无连接的,所以可以同时多个客户端跟服务端通信。 2.代码例子 服务端: 客户端: ...
分类:
编程语言 时间:
2017-08-29 14:20:30
阅读次数:
147
粘包 注意注意注意: res=subprocess.Popen(cmd.decode('utf-8'),shell=True,stderr=subprocess.PIPE,stdout=subprocess.PIPE) 的结果的编码是以当前所在的系统为准的,如果是windows,那么res.stdo ...
分类:
其他好文 时间:
2017-08-25 15:48:35
阅读次数:
205
tcp粘包拆包解决方案1.发送定长的消息server端:
EventLoopGrouppGroup=newNioEventLoopGroup();
EventLoopGroupcGroup=newNioEventLoopGroup();
ServerBootstrapb=newServerBootstrap();
b.group(pGroup,cGroup)
.channel(NioServerSocketChannel.class)
.childH..
分类:
Web程序 时间:
2017-08-24 19:52:26
阅读次数:
152
上次写了个widget程序,安装好后准备把它添加到手机主页上,发现窗口小部件中找不到我刚刚安装的那个widget,网上查资料才发现系统窗口小部件只能先加载扫描安装在内存的应用程序,把属于widget的APP显示到小部件列表上。 对于开发者来说,怎样才能让应用程序自动安装到手机内存中去呢? 在 And ...
分类:
移动开发 时间:
2017-08-24 16:12:00
阅读次数:
180
一,发生粘包 服务器端 客户端 二,用struct模块解决粘包问题 为字节流加上自定义固定长度报头,报头中包含字节流长度,然后一次send到对端,对端在接收时,先从缓存中取出定长的报头,然后再取真实数据 服务器端 客户端 三,大文件粘包问题 服务器端 客户端 四,udp套接字 服务器端 客户端 ud ...
分类:
编程语言 时间:
2017-08-24 13:33:45
阅读次数:
250
一、 什么是粘包 1.须知:只有TCP有粘包现象,UDP永远不会粘包 2.所谓粘包问题主要还是因为接收方不知道消息之间的界限,不知道一次性提取多少字节的数据所造成的。 二、两种情况下会发生粘包。 1.发送数据时间间隔很短,数据了很小,会合到一起,产生粘包 1 from socket import * ...
分类:
编程语言 时间:
2017-08-22 20:49:24
阅读次数:
187
一、什么是粘包 须知:只有TCP有粘包现象,UDP永远不会粘包 粘包不一定会发生 如果发生了:1.可能是在客户端已经粘了 2.客户端没有粘,可能是在服务端粘了 首先需要掌握一个socket收发消息的原理 应用程序所看到的数据是一个整体,或说是一个流(stream),一条消息有多少字节对应用程序是不可 ...
分类:
其他好文 时间:
2017-08-22 20:13:41
阅读次数:
228
题目: map和set可不可以组合呢,想了想好像也可以,set只负责判断包含,map的存,删,随机取,都可以O(1),有待验证 ...
分类:
其他好文 时间:
2017-08-22 18:46:31
阅读次数:
162