From e1dbd84e697445ea0c5f73075f56f97e5849ae53 Mon Sep 17 00:00:00 2001 From: hch <305670599@qq.com> Date: 星期五, 08 三月 2019 14:58:15 +0800 Subject: [PATCH] 6328 【后端】优化代码eval - json只适合字符串序列化,并且尽量用于非中文;建议使用cPickle 的dumps 和loads,协议用2,可支持所有类型,缺点为序列化后不可阅读 --- ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldActionControl.py | 12 ++++++------ 1 files changed, 6 insertions(+), 6 deletions(-) diff --git a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldActionControl.py b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldActionControl.py index 7d16d92..70206b0 100644 --- a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldActionControl.py +++ b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldActionControl.py @@ -42,7 +42,7 @@ from types import IntType import time -import json +import cPickle #--------------------------------------------------------------------- #年月日时间格式 @@ -1121,20 +1121,20 @@ recMapID = universalRecData.GetValue1() if recMapID == mapID: findRecData = universalRecData - fbOpenRecord[recMapID] = json.loads(universalRecData.GetStrValue1()) + fbOpenRecord[recMapID] = cPickle.loads(universalRecData.GetStrValue1()) if not findRecData: findRecData = recTypeListData.AddRec() findRecData.SetValue1(mapID) - findRecData.SetStrValue1(json.dumps([curDayStr], ensure_ascii=False)) + findRecData.SetStrValue1(cPickle.dumps([curDayStr], 2)) fbOpenRecord[mapID] = [curDayStr] else: - recordList = json.loads(findRecData.GetStrValue1()) + recordList = cPickle.loads(findRecData.GetStrValue1()) if curDayStr not in recordList: recordList.append(curDayStr) if len(recordList) > 3: #只存最近3次 del recordList[0] - findRecData.SetStrValue1(json.dumps(recordList, ensure_ascii=False)) + findRecData.SetStrValue1(cPickle.dumps(recordList, 2)) fbOpenRecord[mapID] = recordList else: return @@ -1150,7 +1150,7 @@ for index in range(recTypeListData.Count()): universalRecData = recTypeListData.At(index) recMapID = universalRecData.GetValue1() - recordList = json.loads(universalRecData.GetStrValue1()) + recordList = cPickle.loads(universalRecData.GetStrValue1()) fbOpenRecord[recMapID] = recordList return fbOpenRecord -- Gitblit v1.8.0