iOS5系统API和5个开源库的JSON解析速度测试.doc

iOS5系统API和5个开源库的JSON解析速度测试.doc

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
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

文档评论(0)

cgtk187 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档