ClockPeriod(), ClockPeriod_r()
QNX SDP8.0C Library ReferenceAPIDeveloper
Get a clock period
Synopsis:
#include <sys/neutrino.h>
int ClockPeriod( clockid_t id,
                 const struct _clockperiod * new,
                 struct _clockperiod * old,
                 int reserved );
int ClockPeriod_r( clockid_t id,
                   const struct _clockperiod * new,
                   struct _clockperiod * old,
                   int reserved );
Arguments:
- id
 - The clock ID of the clock; one of the following:
  
- CLOCK_REALTIME — the clock that maintains the system time.
 - CLOCK_SOFTTIME — (a QNX OS extension)
    this clock is active only when
    the processor isn't in a power-saving mode.  
    For example, an application using a CLOCK_SOFTTIME timer
    to sleep wouldn't wake up the processor when the application was due to wake up.  
    This will allow the processor to enter a power-saving mode.
    
    
While the processor isn't in a power-saving mode, CLOCK_SOFTTIME behaves the same as CLOCK_REALTIME.
 - CLOCK_MONOTONIC — this clock always increases at a constant rate and can't be adjusted.
 
 - new
 - This argument is not used. Set to NULL.
 - old
 - A pointer to a _clockperiod structure where the function can store the clock
  period. This structure contains at least the following members:
  
  
- uint32_t nsec — the period of the clock, in nanoseconds.
 - int32_t fract — reserved for future fractional nanoseconds. Set this field to zero.
 
 - reserved
 - Set this argument to 0.
 
Library:
libc
Use the -l c option to qcc to link against this library. This library is usually included automatically.
Description:
You can use the ClockPeriod() and ClockPeriod_r() kernel calls to get the clock period of the clock. These functions are identical except in the way they indicate errors. See the Returns section for details.
Note: 
If you want to get the clock period, consider calling
  clock_getres()
  instead of using these kernel calls directly.
Blocking states
These calls don't block.
Returns:
The only difference between these functions is the way they indicate errors:
- ClockPeriod()
 - If an error occurs, this function returns -1 is and sets errno. Any other value returned indicates success.
 - ClockPeriod_r()
 - EOK is returned on success. This function does NOT set errno. If an error occurs, the function can return any value in the Errors section.
 
Errors:
- EFAULT
 - A fault occurred when the kernel tried to access the buffers provided.
 - EINVAL
 - The clock ID is invalid.
 - ENOTSUP
 - The new argument is not NULL.
 
Classification:
| Safety: | |
|---|---|
| Cancellation point | No | 
| Signal handler | Yes | 
| Thread | Yes | 
Page updated: 
