ios 计算方法执行的时间

转自:http://jordy.easymorse.com/?p=849#more-849

ios开发中,有时我们需要考虑方法执行的时间来做优化,比方查找数据库的方法(需要知道查找数据的时间),具体的计算方法如下:

1、新建一个文件:CalculateRunTime.h 代码:

@interface CalculateRunTime : NSObject

CGFloat BUNRTimeBlock (void (^block)(void));

@end

CalculateRunTime.m  代码

#import <mach/mach_time.h>

@implementation CalculateRunTime

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;  

}

2、使用方法,首先引用文件

CGFloat time;

time = BNRTimeBlock (^{

    //这里执行你的代码

});

posted on 2012-09-13 23:42  kiao295338444  阅读(423)  评论(0编辑  收藏  举报

导航