zclock(7) - Linux man page
Name
zclock - millisecond clocks and delays
Synopsis
// Sleep for a number of milliseconds
CZMQ_EXPORT void
zclock_sleep (int msecs);
// Return current system clock as milliseconds
CZMQ_EXPORT int64_t
zclock_time (void);
// Print formatted string to stdout, prefixed by date/time and
// terminated with a newline.
CZMQ_EXPORT void
zclock_log (const char *format, ...);
// Self test of this class
int
zclock_test (bool verbose);
Description
The zclock class provides essential sleep and system time functions, used to slow down threads for testing, and calculate timers for polling. Wraps the non-portable system calls in a simple portable API.
This class contains some small surprises. Most amazing, win32 did an API better than POSIX. The win32 Sleep() call is not only a neat 1-liner, it also sleeps for milliseconds, whereas the POSIX call asks us to think in terms of nanoseconds, which is insane. I've decided every single man page for this library will say "insane" at least once. Anyhow, milliseconds are a concept we can deal with. Seconds are too fat, nanoseconds too tiny, but milliseconds are just right for slices of time we want to work with at the 0MQ scale. zclock doesn't give you objects to work with, we like the czmq class model but we're not insane. There, got it in again. The Win32 Sleep() call defaults to 16ms resolution unless the system timer resolution is increased with a call to timeBeginPeriod() permitting 1ms granularity.
Example
From zclock_test method.
-
int64_t start = zclock_time (); zclock_sleep (10); assert ((zclock_time () - start) >= 10);
See Also
czmq(7)
Authors
The CZMQ manual was written by Pieter Hintjens<ph@imatix.com [1] >.
Resources
Main web site: http://czmq.zeromq.org/
Report bugs to the 0MQ development mailing list: <zeromq-dev@lists.zeromq.org [2] >
Copyright
Copyright © 1991-2010 iMatix Corporation and contributors. License LGPLv3+: GNU LGPL 3 or later <http://gnu.org/licenses/lgpl.html>. This is free software: you are free to change it and redistribute it. There is NO WARRANTY, to the extent permitted by law. For details see the files COPYING and COPYING.LESSER included with the CZMQ distribution.