[Swift] 함수간 걸린시간 측정 / 실행 시간 / 코드 실행 시간 측정

2022. 6. 14. 14:49🍏/Swift

Foundation 내장 함수인 CFAbsoluteTimeGetCurrent() 활용.
TimeInterval로 return시 CFAbsoluteTime 반환보다 적은 시간이 나오는 것을 확인.

import Foundation
public func progressTime(_ closure: () -> ()) -> TimeInterval {
let start = CFAbsoluteTimeGetCurrent()
closure()
let diff = CFAbsoluteTimeGetCurrent() - start
return (diff)
}
progressTime {
// put your func
}

 

예시)

import Foundation
public func progressTime(_ closure: () -> ()) -> TimeInterval {
let start = CFAbsoluteTimeGetCurrent()
closure()
let diff = CFAbsoluteTimeGetCurrent() - start
return (diff)
}
func chhh_isPrime(_ nb: Int) -> Bool {
var i: Int
i = 2
if (nb <= 1) { return (false) }
while (i * i <= nb)
{
if (nb % i == 0) { return (false) }
i+=1
}
return (true)
}
print(progressTime {
print(chhh_isPrime(2147483647))
})

소수 구하는 함수 걸린 시간