赤虹json模块速度测试,对比11种模块多线程

易语言 2020-02-26 14:09:13

赤虹json模块速度测试,对比11种模块多线程

不只是单纯的比速度,还比能不能适合多线程的场景(精易的类json改改也能多线程调用但是每次都得初始化麻烦,就把精易的类json看做不支持多线程的)。

Coxxs做的json操作 模块1.63 ,这个无下载地址,在酷Q开发群的群文件中的(本来就是找个合适开发酷Q插件用到json模块,酷Q作者自己做的json模块肯定要评测的),也有源码最后会把以上11个一并打包放出来

测试用例介绍
我选的测试用例可能不具代表性,也懒得去找了
一号样本:json.txt(855KB)为我项目中用到的一个*F淦鞯膉son,算是我做项目遇到的最大的json了!

二号样本:json-.txt(371KB)为 ehash&ejson 勤奋的欧尼酱修改版 (自称EJSON) 模块中带着的,应该有一定代表性吧?

前面在线程中调用各json模块进行解析,输出解析完的时间(毫秒)和是否解析成功(逻辑)。

后面在线程中调用(子程序1),输出所有json模块解析后的成员数,如果是0是没解析成功。

赤虹(返回假)、烁成员数为0)多线程识别不了,淘汰

精易多线程无法保存对象(成员数为0),需要重复初始化,淘汰

coxxs的太过于简陋, 没有获取成员数的方法,淘汰

时间快的有彗星,E2EE, 慢的有EJson zyjson json解析模块 谢栋

在上面剩下的6个模块中选,

E2EE 未能识别,淘汰
彗星 识别了无法保存或者无法识别?(成员数为0)淘汰
谢栋 识别了无法保存或者无法识别?(成员数为0)淘汰

时间快的有EJson, 慢的有zyjson,json解析模块

EJson的相关文档较少(方法还是英文的。。),如果遇到对json比较大、时间要求快的项目可以优先考虑。而zyjson模块用的多,有解析工具,方便写软件。