摘要: struct模块 执行Python值和C结构体之间的转换,从而形成Python字节对象。它使用格式字符串作为底层C结构体的紧凑描述,进而根据这个格式字符串转换成Python值。 主要方法: pack(fmt, v1, v2, ...) 根据所给的fmt描述的格式将值v1,v2,...转换为一个字符串 阅读全文
posted @ 2017-03-04 22:06 Vincen_shen 阅读(149) 评论(0) 推荐(0)
摘要: 发送数据包前 对包的长度进行计算 1. 比较low的方法是 len( package) 然后直接发送给接收端。这样会出现一个问题,就是接收端不知道你的这个 len(package)是几个字节,就也有可能会出现粘包问题。 2. 利用struct对包的长度打包为固定4个字节或8个字节。 3. struc 阅读全文
posted @ 2017-03-04 18:49 Vincen_shen 阅读(1365) 评论(0) 推荐(0)
摘要: TCP的粘包现象 看面经时,看到有面试官问TCP的粘包问题。想起来研一做购物车处理数据更新时遇到粘包问题,就总结一下吧。 1 什么是粘包现象 TCP粘包是指发送方发送的若干包数据到接收方接收时粘成一包,从接收缓冲区看,后一包数据的头紧接着前一包数据的尾。 2 为什么出现粘包现象 (1)发送方原因 我 阅读全文
posted @ 2017-03-04 18:40 Vincen_shen 阅读(168) 评论(0) 推荐(0)
摘要: 前戏: 一般来说,要使用某个类的方法,需要先实例化一个对象再调用方法。 而使用@staticmethod或@classmethod,就可以不需要实例化,直接类名.方法名()来调用。 这有利于组织代码,把某些应该属于某个类的函数给放到那个类里去,同时有利于命名空间的整洁。 既然@staticmetho 阅读全文
posted @ 2017-03-04 10:07 Vincen_shen 阅读(530) 评论(0) 推荐(0)