Cygwin: implement extensible clock interface
- Drop hires_[nm]s clocks, rename hires.h to clock.h. - Implement clk_t class as an extensible clock class in new file clock.cc. - Introduce get_clock(clock_id) returning a pointer to the clk_t instance for clock_id. Provide the following methods along the lines of the former hires classes: void clk_t::nsecs (struct timespec *); ULONGLONG clk_t::nsecs (); LONGLONG clk_t::usecs (); LONGLONG clk_t::msecs (); void clk_t::resolution (struct timespec *); - Add CLOCK_REALTIME_COARSE, CLOCK_MONOTONIC_RAW, CLOCK_MONOTONIC_COARSE and CLOCK_BOOTTIME clocks. - Allow clock_nanosleep, pthread_condattr_setclock and timer_create to use all new clocks (both clocks should be usable with a small tweak, though). - Bump DLL major version to 2.12. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
This commit is contained in:
@@ -586,6 +586,14 @@ LoadDLLfunc (GetSystemTimePreciseAsFileTime, 4, kernel32)
|
||||
LoadDLLfuncEx (PrefetchVirtualMemory, 16, kernel32, 1)
|
||||
LoadDLLfunc (SetThreadGroupAffinity, 12, kernel32)
|
||||
|
||||
/* MSDN claims these are exported by kernel32.dll, but only
|
||||
QueryUnbiasedInterruptTime actually is. The others are only
|
||||
available via KernelBase.dll. */
|
||||
LoadDLLfunc (QueryInterruptTime, 4, KernelBase)
|
||||
LoadDLLfunc (QueryInterruptTimePrecise, 4, KernelBase)
|
||||
LoadDLLfunc (QueryUnbiasedInterruptTime, 4, KernelBase)
|
||||
LoadDLLfunc (QueryUnbiasedInterruptTimePrecise, 4, KernelBase)
|
||||
|
||||
/* ldap functions are cdecl! */
|
||||
#pragma push_macro ("mangle")
|
||||
#undef mangle
|
||||
|
Reference in New Issue
Block a user