- 1、本文档共4页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
iOS5系统API和5个开源库的JSON解析速度测试
iOS5新增了JSON解析的API,我们将其和其他五个开源的JSON解析库进行了解析速度的测试,下面是测试的结果。
我们选择的测试对象包含下面的这几个框架,其中NSJSONSerialization是iOS5系统新增的JSON解析的API,需要iOS5的环境,如果您在更低的版本进行测试,应该屏蔽相应的代码调用。
- [SBJSON (json-framework)](/p/json-framework/)
- [TouchJSON (from touchcode)](/p/touchcode/)
- [YAJL (objective-C bindings)](/gabriel/yajl-objc)
- [JSONKit](/johnezang/JSONKit)
- [NextiveJson](/nextive/NextiveJson)
-[NSJSONSerialization](/library/ios/#documentation/Foundation/Reference/NSJSONSerialization_Class/Reference/Reference.html#//apple_ref/doc/uid/T
我们选择了四个包含json格式的数据的文件进行测试。每一个文件进行100的解析动作,对解析的时间进行比较。
工程包含以下的文件和框架:
测试时间间隔的的代码的宏定义如下,其中计算的次数和解析的代码由外部调用传入:
#define RunWithCount(count, description, expr) \
do { \
CFAbsoluteTime start = CFAbsoluteTimeGetCurrent(); \
for(NSInteger i = 0; i count; i++) { \
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; \
expr; \
[pool release]; \
} \
\
CFTimeInterval took = CFAbsoluteTimeGetCurrent() - start; \
NSLog(@%@ %0.3f, description, took); \
\
} while (0) 这是外面调用的代码,设置读取的json文件和计算的次数,每一个函数在进行对应框架API的解析代码:
JSONTest *test = [[JSONTest alloc] init];
NSInteger count = 100;
[test runWithResourceName:@twitter_public.json count:count];
[test runWithResourceName:@lastfm.json count:count];
[test runWithResourceName:@delicious_popular.json count:count];
[test runWithResourceName:@yelp.json count:count]; 我们的测试的环境是Xcode 4.2和iOS5,计算次数是100次,这是计算的结果Log:
2011-11-24 14:48:59.441 JSONPerfTest[9716:207] SBJSON-twitter_public.json 0.335
2011-11-24 14:48:59.625 JSONPerfTest[9716:207] YAJL-twitter_public.json 0.183
2011-11-24 14:49:00.095 JSONPerfTest[9716:207] TouchJSON-twitter_public.json 0.469
2011-11-24 14:49:00.226 JSONPerfTest[9716:207] JSONKit-twitter_public.json 0.130
2011-11-24 14:49:00.390 JSONPerfTest[9716:207] NextiveJson-twitter_public.json 0.164
2011-11-24 14:49:00.504 JSONPerfTest[9716:207] NSJSONSerialization-twitter_public.json 0.113
2011-11-24 14:49:01.196 JSONPerfTest[9716:207] SBJSON-lastfm.json 0.691
2011-11-24 14:49:01.516 JSONPerfTest[9716:20
您可能关注的文档
- DS第6章图.ppt
- dud930超探培训.ppt
- E1知识点总结.doc
- DYNA碰撞培训转训.ppt
- E3Table参考手册[0.9.2].doc
- EB2-200综掘机下井安全技术措施.doc
- DVT山峰.ppt
- Eclipse下的Android-NDK安装实操.doc
- EDA(VHDL)编程基础习题.doc
- ECD和FID操作规程.doc
- Unit 6 Get Close to Nauture Lesson 22 -课件-2025-2026学年度北京版英语四年级上册.pptx
- Unit 7 Be Together Lesson 23 -课件-2025-2026学年度北京版英语四年级上册.pptx
- 2025食品饮料行业AI转型白皮书-2025食品饮料行业数智化转型领先实践.pdf
- Unit 7 Be Together Lesson 24 -课件-2025-2026学年度北京版英语四年级上册.pptx
- Unit 7 Be Together Lesson 25 -课件-2025-2026学年度北京版英语四年级上册.pptx
- Unit 7 Be Together Lesson 26 -课件-2025-2026学年度北京版英语四年级上册.pptx
- 2025年广州体育职业技术学院单招职业倾向性考试题库完美版.docx
- 软件公司员工考勤异常处理.doc
- 2025年土地登记代理人之土地登记相关法律知识题库500道及完整答案【有一套】.docx
- 2025年四平职业大学单招职业适应性考试题库含答案.docx
最近下载
- IPC-2221C-EN TOC2023印制版设计通用标准 Generic Standard on Printed Board Design.pdf VIP
- 2022-2023新版人教版初中九年级化学上册(全册)课件.ppt
- 人教版物理九年级全册分层作业设计.doc
- 九上语文必背内容.docx VIP
- 标准图集-20S515-钢筋混凝土及砖砌排水检查井.pdf VIP
- 人教版初中九年级化学下册全册完整课件.ppt VIP
- 新高考语文64篇古诗文理解性默写汇编(含答案).docx VIP
- 物流工作流程及出入庫管理流程图.doc VIP
- 危化品安全数据表.doc VIP
- 丰田沟通技巧报联商培训讲义.pptx VIP
文档评论(0)