time함수와 gettimeofday 함수의 차이점..
글쓴이: psjcap / 작성시간: 수, 2004/06/02 - 4:25오후
안녕하세요..
gettimeofday 함수와 time 함수를 섞어서 사용했는데..
사용하다보니.. 가끔 두 함수의 리턴결과가 차이가 나는 경우가 발생합니다..
물론 한 프로그램에서 순서데로 호출이다 보니..
약간의 차이는 당연히 발생할 수 있습니다만..
무한루프를 돌게하면서.. 계속 결과를 출력하여 보았더니..
gettimeofday 함수가 time 함수보다 평균적으로 0.07초 정도가 빠르더군요..
이 두 함수가 시간을 얻어오는 차이점에 대해서 혹시 알고 계신 분이 계신가해서 질문 올립니다..
그럼 좋은 하루 되셔요..^^"
Forums:
보통 time(3)이 gettimeofday(2)를 이용해서 구현되어 있
보통 time(3)이 gettimeofday(2)를 이용해서 구현되어 있습니다.
함수 호출 오버헤드때문에 time() 이 조금 더 긴 시간이 걸리는 것 아닐까요?
FreeBSD libc의 구현을 첨부합니다 :-)
----
Let's shut up and code.
테스트 소스..
위 소스를 실행하면..
[Time Error] time(1086162243) gettimeofday(1086162244, 5677)
[Time Error] time(1086162243) gettimeofday(1086162244, 5715)
[Time Error] time(1086162243) gettimeofday(1086162244, 5753)
[Time Error] time(1086162243) gettimeofday(1086162244, 5791)
[Time Error] time(1086162243) gettimeofday(1086162244, 5830)
[Time Error] time(1086162243) gettimeofday(1086162244, 5869)
[Time Error] time(1086162243) gettimeofday(1086162244, 5907)
[Time Error] time(1086162243) gettimeofday(1086162244, 5945)
즉 gettimeofday 함수가 먼저 호출되었지만..
먼저 호출되었으므로 느린게 맞겠지만..
실제론 time보다 시간이 더 빠릅니다..
테스트 환경은 Solaris 8입니다..
댓글 달기