美文网首页
swift性能分析

swift性能分析

作者: 史记_d5da | 来源:发表于2020-03-30 23:00 被阅读0次

1、swift的基本数据类型string、dictionary等都是struct类型,而oc的NSString、NSDictionary等都继承class。从内存管理方面来分析,struct是分配在栈,class一般都是分配在堆上。大家都知道栈的性能要比堆更好。

2、swift的数据类型都是在编译阶段就确定了,oc具有动态性,一般的数据类型和函数调用都是在运行时才确定。

结合oc和swift的demo来分析各自的性能。
swift的代码

var arr:[String] = []
override func viewDidLoad() {
   super.viewDidLoad()
   let startTime = CFAbsoluteTimeGetCurrent()
   let testStr = String("一段测试代码,一万遍的循环")
   for _ in 1...10000 {
       arr.append(testStr)
   }
   let linkTime = (CFAbsoluteTimeGetCurrent() - startTime);
   print("Linked in \(linkTime) ms")
}

控制台打印

**Linked in 0.025310993194580078 ms**

oc代码

self.arr = [[NSMutableArray alloc]init];
CFAbsoluteTime startTime =CFAbsoluteTimeGetCurrent();
NSString *testStr = [NSString stringWithFormat:@"%@",@"一段测试代码,一万遍的循环"];
for (int i = 0; i < 10000; i++) {
    [self.arr addObject:testStr];
}
CFAbsoluteTime linkTime = (CFAbsoluteTimeGetCurrent() - startTime);
NSLog(@"Linked in %f ms", linkTime *1000.0);

控制台打印

Linked in 0.177026 ms

计算相同的数据量,性能上还是有很大差别的

相关文章

  • swift性能分析

    1、swift的基本数据类型string、dictionary等都是struct类型,而oc的NSString、N...

  • iOS开发见闻-第14期

    欢迎加QQ群讨论:157672725 文章 1.Swift 性能探索和优化分析 : 喵神的swift,不解释直接看...

  • Swift语言性能分析

    一、两个疑惑 OC 和 Swift 语言在 Richards 上评测的结果显示,Swift 比 OC 快了4倍,S...

  • Swift性能优化分析

    自从2014年Apple发布Swift语言以来,历时六年多,Swift已经发布到5.3版本,在5.0版本已经ABI...

  • [Swift] 性能的一些测试

    1.Swift中数组性能的对比 编写性能要求高的算法时,发现Swift对使用Array还是ContiguousAr...

  • Swift面试题

    1、Swift 比 Objective-C 有什么优势? Swift 速度更快,运算性能更高。Swift 语法简单...

  • 2019-06-23

    go 字符串操作性能 浅析 go 性能分析 性能分析函数

  • facebook 开源性能分析工具xhprof【目录】

    目录 前言APM介绍性能分析简介[寻找性能分析的最佳时机]Facebook 性能分析工具xhprof xhprof...

  • 性能深度分析之System Trace

    性能深度分析之System Trace性能深度分析之System Trace

  • php入门--性能测试

    PHP性能问题具体分析 工具:XHProf-性能分析扩展工具ab-压力测试vld-opcode代码分析 PHP性能...

网友评论

      本文标题:swift性能分析

      本文链接:https://www.haomeiwen.com/subject/jgzbuhtx.html