beginning of a monotonic clock implementation. still needs linux and mac -- clock_gettime() and mach_absolute_time()
parent
86be7762b1
commit
4b7a56bdfb
|
@ -0,0 +1 @@
|
||||||
|
Doug Coleman
|
|
@ -0,0 +1,7 @@
|
||||||
|
! Copyright (C) 2009 Doug Coleman.
|
||||||
|
! See http://factorcode.org/license.txt for BSD license.
|
||||||
|
USING: system ;
|
||||||
|
IN: monotonic-clock
|
||||||
|
|
||||||
|
HOOK: monotonic-count os ( -- n )
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
Doug Coleman
|
|
@ -0,0 +1,4 @@
|
||||||
|
! Copyright (C) 2009 Doug Coleman.
|
||||||
|
! See http://factorcode.org/license.txt for BSD license.
|
||||||
|
USING: ;
|
||||||
|
IN: monotonic-clock.unix.linux
|
|
@ -0,0 +1 @@
|
||||||
|
unportable
|
|
@ -0,0 +1 @@
|
||||||
|
Doug Coleman
|
|
@ -0,0 +1,4 @@
|
||||||
|
! Copyright (C) 2009 Doug Coleman.
|
||||||
|
! See http://factorcode.org/license.txt for BSD license.
|
||||||
|
USING: ;
|
||||||
|
IN: monotonic-clock.unix.macosx
|
|
@ -0,0 +1 @@
|
||||||
|
unportable
|
|
@ -0,0 +1 @@
|
||||||
|
Doug Coleman
|
|
@ -0,0 +1 @@
|
||||||
|
unportable
|
|
@ -0,0 +1,19 @@
|
||||||
|
! Copyright (C) 2009 Doug Coleman.
|
||||||
|
! See http://factorcode.org/license.txt for BSD license.
|
||||||
|
USING: alien.c-types alien.data fry kernel monotonic-clock
|
||||||
|
system windows.errors windows.kernel32 ;
|
||||||
|
IN: monotonic-clock.windows
|
||||||
|
|
||||||
|
<PRIVATE
|
||||||
|
|
||||||
|
: execute-performance-query ( word -- n )
|
||||||
|
[ "LARGE_INTEGER*" <c-object> ] dip
|
||||||
|
'[ _ execute win32-error=0/f ] keep *ulonglong ; inline
|
||||||
|
|
||||||
|
PRIVATE>
|
||||||
|
|
||||||
|
M: windows monotonic-count ( -- n )
|
||||||
|
\ QueryPerformanceCounter execute-performance-query ;
|
||||||
|
|
||||||
|
: cpu-frequency ( -- n )
|
||||||
|
\ QueryPerformanceFrequency execute-performance-query ;
|
Loading…
Reference in New Issue