개발을 하다보면, 특정 작업을 하는데 얼마나 시간이 걸리는지 체크해볼 필요가 종종 있다.
윈도우에서는 간단한 것은 GetTickCount() 함수 같은 것을 이용해서 처리할 수 있고, 좀 더 세밀한 확인을 위해서는 멀티미디어 타이머를 이용하기도 한다.
아이폰 어플리케이션 개발에서도 몇 가지 방법이 있는데 아래는 그 중 두 가지 방법을 알아보자.
첫번째는 NSDate 이용하는 방법
NSDate *date = [NSDate date];
// 이곳에 시간이 걸리는 작업들 처리
NSTimeInterval elapsed = [date timeIntervalSinceNow] * -1000.0;
NSLog(@"%f", elapsed);
두번째는 mach_ 함수를 이용하는 방법
#import <mach/mach.h>
#import <mach/mach_time.h>
// ...
uint64_t start;
uint64_t elapsed;
mach_timebase_info_data_t sTimebaseInfo;
start = mach_absolute_time();
// 이곳에 시간이 걸리는 작업들 처리
elapsed = mach_absolute_time() - start;
mach_timebase_info(&sTimebaseInfo);
NSLog(@"%f", elapsed * sTimebaseInfo.numer / sTimebaseInfo.denom);