Name
sched_getcpu - determine CPU on which the calling thread is runningLibrary
Standard C library ( libc ", " -lc )Synopsis
#include <sched.h> int sched_getcpu(void);
Feature Test Macro Requirements for glibc (see feature_test_macros(7)):
sched_getcpu()
Since glibc 2.14: _GNU_SOURCE Before glibc 2.14: _BSD_SOURCE || _SVID_SOURCE /* _GNU_SOURCE also suffices */
Description
sched_getcpu() returns the number of the CPU on which the calling thread is currently executing.Return Value
On success, sched_getcpu() returns a nonnegative CPU number. On error, -1 is returned and errno is set to indicate the error.Errors
ENOSYS This kernel does not implement getcpu(2).
Attributes
For an explanation of the terms used in this section, see attributes(7).Interface | Attribute | Value |
T} | Thread safety | MT-Safe |
Standards
GNU.History
glibc 2.6.Notes
The callcpu = sched_getcpu();
is equivalent to the following getcpu(2) call:
int c, s; s = getcpu(&c, NULL, NULL); cpu = (s == -1) ? s : c;