On Monday 26 March 2007 00:08, andrzej zaborowski wrote: > On 26/03/07, andrzej zaborowski <[EMAIL PROTECTED]> wrote: <snip> > > > +# warning non-optimized CPU > > > +#include <sys/time.h> > > > +#include <time.h> > > > + > > > static inline int64_t cpu_get_real_ticks (void) > > > { > > > - static int64_t ticks = 0; > > > - return ticks++; > > > + struct timeval tv; > > > + static int64_t i = 0; > > > + int64_t j; > > > + > > > + gettimeofday(&tv, NULL); > > > + do { > > > + j = (tv.tv_sec * (uint64_t) 1000000) + tv.tv_usec; > > > + } while (i == j); > > > + i = j; > > > + return j; > > > > Isn't this an infinite loop? gettimeofday() was left out of the loop. > > > > How about "return j + (ticks++)" instead of the loop? If I understand > > correctly it may slow things down to below 1Hz. > > (I wanted to say MHz)
I dont think so, in the loop "j" is set and the while-condition is "j==i", so unless "(tv.tv_sec * (uint64_t) 1000000) + tv.tv_usec" always computes the same value the do-while block gets only executed once. > <snip> -- Freundliche Gruesse, Marc Lörner Tel.: +49 (0)9103-715-30046 Fax.: +49 (0)9103-715-271 Internet: http://www.hob.de E-Mail: [EMAIL PROTECTED] HOB GmbH & Co. KG Schwadermühlstraße 3 90556 Cadolzburg Geschaeftsfuehrer Klaus Brandstaetter - Franz Wiedenmann AG Fuerth HRA 5180 Steuer-Nr. 218/163/00107 USt-ID-Nr. DE 132747002 Komplementaerin HOB electronic BeteiligungsGmbH AG Fuerth HRB 3416