文章说明

不是讲语言字典也就那点东西,是开发工具中的一些场景,帮助打开其他思路的。

自动化场景

比如 {"手机 devicesId1":布尔,"手机 devicesId2":布尔}
定期检测,就字典对象 [key]=value 形式自动覆盖或者添加。

对自动化上下文场景的记录,维护一个字典,往后追加,当然是可以用链表。
如果当前场景多次还是定位不到复位到上个字典的位置。
每次跑完或者切换手机可以复位字典,也可以写在析构函数位置。
存数字更好,0 代表没有链接,1 代表链接上第一个场景,2,3,4,5 分别代表不同界面和场景号可以浮点数类型。比如 1.0 +.1(如果检查点过了就是加 0.1)就是 1.1,也就是 1-1 是不是很不错。
最后手机自动断开 phone_list["手机 deviceId"]=0

网络协议

管理协议和数据包格式
proto_list={"游戏名称 “:函数名称,...多个} 注意这里函数名称不带括号
传入压包函数先判断下 是否在 proto_list.keys() 对象里面。

proto_list ={
      "游戏名称“:函数名称
}

def dgame_protocol(body_data,api_attr):
     ... 省略内容

def pack_msg(body_data, header_attr=None):
   #传入协议类型
    protocol = header_attr['protocol']
    if protocol in proto_list .keys():
        return  proto_list.get(protocol)(body_data, header_attr)  

proto_list[protocol] 对象是上面说的函数名称,pack_msg 会根据定义游戏名称去找各自的压包结构体。


↙↙↙阅读原文可查看相关链接,并与作者交流