【问题标题】:XCode 6 Playground Measuring Code PerformanceXCode 6 Playground 测量代码性能
【发布时间】:2014-07-24 17:08:53
【问题描述】:


是否有任何快速的方法来评估在新 XCode 6 操场上编写的某个代码部分的性能/运行时?
我想通过比较某些解决方案的不同编码风格及其对代码性能的影响来开始学习 Swift。

【问题讨论】:

    标签: ios xcode6 swift-playground


    【解决方案1】:

    我们强烈反对使用 Playground 来衡量性能,至少使用时间来衡量性能。到目前为止,在操场上花费的大部分时间是记录结果以显示在侧边栏中。您的代码所花费的实际时间并没有多大贡献。因此,您的代码在 Playground 中的运行时间主要取决于运行了多少行代码/记录了多少结果。

    如果您想进行性能测量,请查看 XCTest 框架。您可以为您的 swift 代码创建一个测试包。

    您可以在操场上衡量的一件事是您的代码行运行次数。因此,例如,如果您尝试测量某些代码的算法复杂性,您可以根据它需要运行代码行的次数来执行此操作,例如完成一个排序,或者你想做的任何事情。多次运行的代码行会在结果侧栏中显示它们运行的​​次数。

    【讨论】:

    • 感谢瑞克的内幕。
    【解决方案2】:

    我构建了这个小工具,让您可以在 Playground 中进行性能测试。

    我会继续更新和增强它,但现在,它会让你有基本的能力来衡量一个函数需要多长时间运行。

    https://github.com/sebastienpeek/swift-performance

    【讨论】:

      【解决方案3】:

      我找到了一个(可能不是那么优雅)的解决方案:

      var start = TickCount()
      
      var implicitInteger = 0
      for (var i = 1; i < 500; i++) {
          implicitInteger += i;
      }
      
      var end = TickCount()
      var dur = end - start
      


      变量“dur”为您提供代码执行所需的滴答声。

      【讨论】:

      • 你从哪里得到 TickCount 对象?
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多