c언에서 경과시간을 잴때 getimeofday를 사용했는데
이 함수보다는 clock_gettime을 권장한다고 한다.
//선언
struct timespec ts1, ts2, ets;
// start
clock_gettime( CLOCK_REALTIME , &ts1 );
// end
clock_gettime( CLOCK_REALTIME , &ts2 );
// 경과시간
void elapsed_time( struct timespec start, struct timespec end, struct timespec *etime ){
if ((end.tv_nsec - start.tv_nsec) < 0){
etime->tv_sec = end.tv_sec - start.tv_sec - 1;
etime->tv_nsec = 1000000000 + end.tv_nsec - start.tv_nsec;
} else {
etime->tv_sec = end.tv_sec - start.tv_sec;
etime->tv_nsec = end.tv_nsec - start.tv_nsec;
}
}
// 출력
printf( "\"elapsed time\" : \"%d.%09lds\"", ets.tv_sec, ets.tv_nsec);
'C언어' 카테고리의 다른 글
GDB 에서 한글 출력이 안될때 (0) | 2015.09.03 |
---|---|
bit masking ( about xor ) (0) | 2015.04.21 |
c11 추가된 내용 (0) | 2015.03.20 |
tokyocabinet threading error (0) | 2015.03.18 |
thread deadlock debugging (0) | 2015.03.06 |