CLOCK_G...UCLOCKID(3POSIX)

πŸ‘‘ CLOCK_G...UCLOCKID β€” the POSIX Programmer's Manual, bestie edition πŸ’…

okay so welcome to CLOCK_G...UCLOCKID(3POSIX), straight outta the POSIX Programmer's Manual. pull up a chair, grab a boba πŸ§‹, we're doing this.

🫧 PROLOG

This manual page is part of the POSIX Programmer's Manual. lowkey important disclaimer incoming: the Linux implementation of this interface may differ (so like, go check the corresponding Linux manual page for the deets on Linux behavior), or honestly the interface may not be implemented on Linux at all. it's giving "it depends" 😭


✨ NAME ✨

clock_getcpuclockid β€” access a process CPU-time clock (ADVANCED REALTIME)

like yes, that's the whole vibe. we're getting a clock id. for a process. advanced realtime, no cap. ⏰


🌸 SYNOPSIS 🌸

#include <time.h>

int clock_getcpuclockid(pid_t pid, clockid_t *clock_id);

πŸ’– DESCRIPTION πŸ’–

The clock_getcpuclockid() function shall return the clock ID of the CPU-time clock of the process specified by pid. so if the process described by pid exists and the calling process has permission? the clock ID of this clock shall be returned in clock_id. periodt. ✨

If pid is zero, the clock_getcpuclockid() function shall return the clock ID of the CPU-time clock of the process making the call, in clock_id. i.e. not me asking about myself πŸ™ˆ

The conditions under which one process has permission to obtain the CPU-time clock ID of other processes are implementation-defined. translation: it's giving mystery, ask your implementation. πŸ¦‹


πŸŽ€ RETURN VALUE πŸŽ€

Upon successful completion, clock_getcpuclockid() shall return zero; otherwise, an error number shall be returned to indicate the error. zero = slay, nonzero = something went wrong, we move.


πŸ’€ ERRORS πŸ’€

The clock_getcpuclockid() function shall fail if:

  • EPERM β€” The requesting process does not have permission to access the CPU-time clock for the process. like bestie, you don't have the ✨access✨ for that process's clock. respectfully. 🚫

The clock_getcpuclockid() function may fail if:

  • ESRCH β€” No process can be found corresponding to the process specified by pid. it's not there. the process is not there. ghosted fr fr πŸ‘»

The following sections are informative.


🌈 EXAMPLES 🌈

None. literally nothing. the void. an empty group chat. πŸ’€


🧚 APPLICATION USAGE 🧚

The clock_getcpuclockid() function is part of the Process CPU-Time Clocks option and need not be provided on all implementations. so if you're on some implementation that doesn't have it, that's not a skill issue, that's just the spec. iykyk πŸ’œ


πŸ“ RATIONALE πŸ“

None. nada. nothing to justify here, bestie. 🫢


⭐ FUTURE DIRECTIONS ⭐

None. the future is... also empty. but cute. ✨


πŸ’… SEE ALSO πŸ’…

  • clock_getres()
  • timer_create()

The Base Definitions volume of POSIX.1‐2017, <time.h>


Portions of this text are reprinted and reproduced in electronic form from IEEE Std 1003.1-2017, Standard for Information Technology -- Portable Operating System Interface (POSIX), The Open Group Base Specifications Issue 7, 2018 Edition, Copyright (C) 2018 by the Institute of Electrical and Electronics Engineers, Inc and The Open Group. In the event of any discrepancy between this version and the original IEEE and The Open Group Standard, the original IEEE and The Open Group Standard is the referee document. The original Standard can be obtained online at http://www.opengroup.org/unix/online.html .

Any typographical or formatting errors that appear in this page are most likely to have been introduced during the conversion of the source files to man page format. To report such errors, see https://www.kernel.org/doc/man-pages/reporting_bugs.html .


and that's the whole page bestie, brought to you by IEEE/The Open Group, 2017 β€” mwah, take care of your clocks, drink water, and remember: permission is implementation-defined πŸ’–πŸ¦‹πŸ’