![]() |
![]() |
![]() |
![]() |
Return the clock ID of the CPU-time clock from a specified process
#include <sys/types.h>
#include <time.h>
#include <errno.h>
int clock_getcpuclockid( pid_t pid,
clockid_t* clock_id );
libc
Use the -l c option to qcc to link against this library. This library is usually included automatically.
The clock_getcpuclockid() function gets the clock ID of the CPU-time clock of the process specified by pid and stores it in the object pointed to by clock_id. The CPU-time clock represents the amount of time the process has spent actually running.
If pid is zero, the clock ID of the CPU-time clock of the process marking the call is returned in clock_id.
A process always has permission to obtain the CPU-time clock ID of another process.
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <errno.h>
int main( int argc, const char *argv[] )
{
clockid_t clk_id;
struct timespec tspec;
int pid;
/* Get the amount of time that the kernel has spent running. */
pid = 1;
if (clock_getcpuclockid( pid, &clk_id) == 0)
{
if (clock_gettime( clk_id, &tspec ) != 0)
{
perror ("clock_gettime():");
}
else
{
printf ("CPU time for pid %d is %d seconds, %ld nanoseconds.\n",
pid, tspec.tv_sec, tspec.tv_nsec);
}
}
else
{
printf ("clock_getcpuclockid(): no process with ID %d.\n", pid);
}
return EXIT_SUCCESS;
}
| Safety: | |
|---|---|
| Cancellation point | No |
| Interrupt handler | No |
| Signal handler | Yes |
| Thread | Yes |
clock_getres(), clock_gettime(), ClockId(), clock_settime(), pthread_getcpuclockid(), timer_create()
Clocks, Timers, and Getting a Kick Every So Often chapter of Getting Started with QNX Neutrino
![]() |
![]() |
![]() |
![]() |