使用Objective-C 计算代码运行时间

第一种:(最简单的NSDate)

NSDate* tmpStartData = [NSDate date];
//You code here...
double deltaTime = [[NSDate date] timeIntervalSinceDate:tmpStartData];
NSLog(@"cost time = %f", deltaTime);

第二种:(将运行代码放入下面的Block中,返回时间)

#import <mach/mach_time.h>  // for mach_absolute_time() and friends  

CGFloat BNRTimeBlock (void (^block)(void)) {
    mach_timebase_info_data_t info;
    if (mach_timebase_info(&info) != KERN_SUCCESS) return -1.0;  

    uint64_t start = mach_absolute_time ();
    block ();
    uint64_t end = mach_absolute_time ();
    uint64_t elapsed = end - start;  

    uint64_t nanos = elapsed * info.numer / info.denom;
    return (CGFloat)nanos / NSEC_PER_SEC;
}

第三种:

/**
 * 计算脚本时间
 * @param $last 最后一次的运行clock
 * @param $key  标识
 * @return 当前clock
 */
double t(double last, char* key){
    clock_t now = clock();
    printf("time:%fs \t key:%s \n", (last != 0) ? (double)(now - last) / CLOCKS_PER_SEC : 0, key);
    return now;
}

double t1 = t(0, "");
//do something
t(t1, "end");

时间: 2024-08-03 19:34:25

使用Objective-C 计算代码运行时间的相关文章

耗时计算-请教一下Matlab怎么计算代码的执行耗时

问题描述 请教一下Matlab怎么计算代码的执行耗时 Matlab怎么计算代码的执行耗时,要求支持code generation 不要说coder.extrinsic 'tic','toc',这个不支持code generation 解决方案 Profile(分析) 在加速你的matlab程序之前,你需要知道你的代码哪一部分运行最慢.matlab提供个简单的机制,让你能够知道你 的代码的某一部分运行所占用CPU时间.通过在代码段开始添加tic,及在结束添加toc:matlab就能计算出这一代 码

windows c/c++ 代码运行时间,毫秒级

#pragma once /* //计算代码段运行时间的类 // */ #include <iostream> #ifndef ComputeTime_h #define ComputeTime_h class ComputeTime { private: int Initialized; __int64 Frequency; __int64 BeginTime; public: bool Avaliable(); double End(); bool Begin(); ComputeTime

clock_gettime测代码运行时间

//函数原型: // long clock_gettime (clockid_t which_clock, struct timespec *tp); //参数列表: // CLOCK_REALTIME:系统实时时间,随系统实时时间改变而改变,即从UTC1970-1-1 0:0:0开始计时,中间时刻如果系统时间被用户该成其他,则对应的时间相应改变. // CLOCK_MONOTONIC:从系统启动这一刻起开始计时,不受系统时间被用户改变的影响 // CLOCK_PROCESS_CPUTIME_I

ublox6卫星伪距改正数的计算代码求给一个

问题描述 ublox6卫星伪距改正数的计算代码求给一个 我最近在做ublox6的卫星伪距改正数的计算,解析出来的伪距是2W多公里,这个是基本正确的,但是在用解析出来的星历计算卫星真实距离的时候计算出来的是3W多公里,这样伪距改正数就成了1W公里左右,差距太大了. 各位大神有相关类代码吗?发给我个,我参考下,真的很感谢. 邮箱是443703349@qq.com 解决方案 这个太高端饿了,完全没听过

asp.net放贷计算代码-请教asp.net中放贷计算代码

问题描述 请教asp.net中放贷计算代码 asp.net放贷计算代码asp.net放贷计算代码asp.net放贷计算代码asp.net放贷计算代码 解决方案 google下就有.房贷写错了,这影响你搜索结果的相关性 随便找一个http://download.csdn.net/download/cxd19880708/4039426 别的你也可以自己找.总之,学会自己google.

php mysql日期计算代码[datediff]

呵呵,下面代码有一点乱啊,是我在测试时做的,php mysql日期计算代码[datediff]也是我今天需要时才来试的喽.下面看看代码 function a($d){ $Date_1=date("Y-m-d");   $Date_2=$d; $Date_List_a1=explode("-",$Date_1);   $Date_List_a2=explode("-",$Date_2); $d1=mktime(0,0,0,$Date_List_a1

php 代码运行时间查看类

php教程 代码运行时间查看类 //date:2011-08-05 class RunTime//页面执行时间类 {  private $starttime;//页面开始执行时间  private $stoptime;//页面结束执行时间  private $spendtime;//页面执行花费时间  function getmicrotime()//获取返回当前微秒数的浮点数  {   list($usec,$sec)=explode(" ",microtime());   retu

php 定义php代码运行时间

php 定义php代码运行时间 定义和用法 time_sleep_until() 函数延迟代码执行直到指定的时间. 语法 time_sleep_until(timestamp) 参数 描述 timestamp 必需.脚本唤醒时的时间戳. 说明 使脚本暂停执行,直到指定的 timestamp. 返回值 如果成功则返回 TRUE,失败则返回 FALSE. 错误/异常 如果指定的时间戳位于过去,则该函数将生成一个 E_WARNING. 提示和注释 注释:所有信号都将在脚本唤醒后递送. 注释:本函数未在

[转载]VS2008 的计算代码度量值

VS2008 里面加了一个 计算代码度量值的功能,那么到底是什么呢?我在msdn 里找到了这个,拷贝下来做个记录.  摘自 http://msdn.microsoft.com/zh-cn/library/bb385914.aspx Visual Studio Team System 代码度量概述 代码度量是一组软件度量值,使开发人员可以更好地了解他们正在开发的代码.利用代码度量,开发人员可以了解哪些类型和/或方法应该返工或进行更彻底的测试.开发团队可以识别潜在的风险.了解项目的当前状态,并跟踪软