当前位置: 首页 > 知识库问答 >
问题:

使用Date()测量执行时间

孙阳舒
2023-03-14

我想比较一个函数的不同实现:

let start1 = Date()
_ = funcImplA()   
let end1 = Date()

let start2 = Date()
_ = funcImplB()
let end2 = Date()

let time1 = end1.timeIntervalSince(start1)
let time2 = end2.timeIntervalSince(start2)
print("ImplA = \(time1 ), ImplB = \(time2)")

我得到的结果是,第一个度量值总是比第二个慢(time1)


共有1个答案

饶滨海
2023-03-14

您可以在单元测试中测试这一点,并使用度量块

请考虑在真实设备上运行,而不是在模拟器上运行

 类似资料:
  • 我想测量使用WebFlux进行的一些异步调用的长度。我已经阅读了各种来源,因为我了解到注释与AspectJ一起工作,基本上只是在方法调用之前启动计时器,然后停止。这显然不适用于异步方法。 是否有任何针对WebFlux的解决方案,或者我唯一能做的就是传递执行时间戳,使我的应用程序逻辑混乱?

  • 问题内容: 我有一段使用解释器执行的JavaScript代码。 如何测量这些数据库插入操作所花费的时间?我可以计算这段代码前后的日期值之差,但是由于代码的异步特性,这将是不正确的。 问题答案: 使用Node.js 和:

  • 问题内容: 有没有一种简单的方法可以测量由JDBC执行的所有sql语句的执行时间,并将结果打印到输出中? 有人可能建议我使用AOP来做到这一点,但我尝试尽可能避免这种情况。还有另一种方法吗? 问题答案: 如果不在提供数据源的应用程序服务器中运行该应用程序,则将发现log4jdbc项目很有用。项目提供的记录器将允许您记录所执行的SQL语句的执行情况。 通过将从DataSource返回的连接包装在Co

  • 我想知道在我的C程序中,某个函数在Linux上执行需要多少时间。之后,我想做一个速度比较。我看到了几个时间函数,但最后从boost得到了这个结果。计时: 现在,我不清楚如果我使用上述功能,我会得到CPU在该功能上花费的唯一时间吗? 其次,我找不到任何使用上述功能的例子。请帮助我如何使用上述功能? P.S:现在,我正在使用以秒为单位获取时间,但由于每次CPU负载不同,这给了我不同的结果。

  • 我搜索了关于测量Java应用程序执行时间的信息,得到了以下代码: 开始和停止之间的差异给了我执行时间。 注意:我知道这不是确切的执行时间。我只是需要多线程和单线程应用程序之间的比较的时间。 如果我这样更改代码会怎样: 执行10个线程。不管他们做什么。假设他们随机填充一个二维数组。 现在,stop-start给了我“全部”执行时间?或者我必须自己测量线程吗?

  • 利用Console API来测量执行时间和计数语句执行。 TL;DR 使用console.time()和console.timeEnd()测量代码两个执行点之间所需的时间。 使用console.count()来计算同一个字符串传递给函数的次数。 测量执行时间 time()方法启动一个新的计时器,对于测量代码执行时间来说是=是非常有用的。将字符串传递给该方法,来给测量标记一个名称。 当您想停止计时器