Doesn't the win32 implementation of gettimeofday() already use the performance timer?
On Sun, Apr 6, 2014 at 3:52 PM, Anatol Belski <[email protected]> wrote: > Hi, > > I would like to propose the extension implementing a high resolution > StopWatch class. It also makes possible to implement a custom stopwatch > using the almost low level ticks delivered by the underlaying APIs. The > extension does NOT implement high resolution timestamps synchronizable to > an external source (well, maybe yet). > > One reason for implementing it is the absense of the nanosecond time in > PHP. The extension is merely focused on user space timers. > > Another reason is that Windows machines not using win8 are vulnerable no > some unaccurate time APIs. This windows implementation uses performance > counters to achieve some better timing results which can be considered > stable within short time frames. Coupled with the fact that no > synchronization to an external source is needed, that might be useful for > windows users. > > The extension would be released under the BSD license, the code is > available here http://belski.net/phpz/hrtime-0.4.3.tar.gz > > The uses of this extension are execution time measurements of code blocks > as well as any other StopWatch use cases. The future scope were for > example implememnting high resolution wait, however this needs some more > variables to do it portable and right. > > Here's a user code example > > $c = new HRTime\StopWatch; > > $c->start(); > /* do some interesting stuff*/ > $c->stop(); > $elapsed0 = $c->getLastElapsedTime(HRTime\Unit::NANOSECOND); > > /* do something else */ > > $c->start(); > /* do some interesting stuff again */ > $c->stop(); > $elapsed1 = $c->getLastElapsedTime(HRTime\Unit::NANOSECOND); > > $elapsed_total = $c->getElapsedTime(HRTime\Unit::NANOSECOND); > > Regards > > Anatol > > -- > PECL development discussion Mailing List (http://pecl.php.net/) > To unsubscribe, visit: http://www.php.net/unsub.php > >
