C언어

clock_gettime

고요한하늘... 2015. 4. 16. 12:48


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