/* ECP: FILEname=fig13_33.c */ /* 1*/ #include /* 2*/ #include /* 3*/ #define Milli( X ) ( ( X.tv_sec * 1000 + X.tv_usec / 1000 ) ) /* 4*/ long int /* 5*/ MilliElapsed( void ) /* 6*/ { /* 7*/ struct Rusage Buf; /* 8*/ static struct Timeval LastUtime; /* 9*/ long int ElapsedTime; /*10*/ /*11*/ getrusage( RUSAGE_SELF, &Buf ); /*12*/ ElapsedTime = Milli( Buf.ru_utime ) - Milli( LastUtime ); /*13*/ LastUtime = Buf.ru_utime; /*14*/ return ElapsedTime; /*15*/ }