美文网首页
获取当前时间

获取当前时间

作者: foolish_hungry | 来源:发表于2018-06-13 22:53 被阅读0次
 // Date 单位 秒
        let startTime1 = Date().timeIntervalSinceReferenceDate
        sleep(1);
        let endTime1 = Date().timeIntervalSinceReferenceDate
        print("Date 耗时: \(endTime1 - startTime1)")
        
        
        // CFAbsoluteTimeGetCurrent 单位 秒
        let startTime2 = CFAbsoluteTimeGetCurrent()
        sleep(2)
        let endTime2 = CFAbsoluteTimeGetCurrent()
        print("CFAbsoluteTimeGetCurrent 耗时: \(endTime2 - startTime2)")
        
        
        // CACurrentMediaTime  单位 秒
        let startTime3 = CACurrentMediaTime();
        sleep(3)
        let endTime3 = CACurrentMediaTime();
        print("CACurrentMediaTime 耗时: \(endTime3 - startTime3)");
        
        
        // dispatch_benchmark  单位 纳秒
        // 这个方法并没有被公开声明,所以必须要自己声明。
        // 可以用来作为判断代码执行效率的工具
        // 怎么在 swift 中使用 
        var sum = 0
        let time = dispatch_benchmark(3) {
            for _ in 0...3 {
                sum += 1
            }
        }
        print("dispatch_benchmark 耗时: \(time)")
    }

第四种在 swift 中的使用

  1. 先建立一个.h 文件 dispatch_benchmark.h
#import <Foundation/Foundation.h>

extern uint64_t dispatch_benchmark(size_t count, void (^block)(void));

@interface Dispatch_benchmark : NSObject

@end
  1. 建立桥接文件
#ifndef oc_bridge_header_h
#define oc_bridge_header_h

#import "dispatch_benchmark.h"


#endif /* oc_bridge_header_h */

相关文章

网友评论

      本文标题:获取当前时间

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