sched_getcpu - Man Page

determine CPU on which the calling thread is running

Library

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).

InterfaceAttributeValue
sched_getcpu()Thread safetyMT-Safe

Standards

GNU.

History

glibc 2.6.

Notes

The call

cpu = sched_getcpu();

is equivalent to the following getcpu(2) call:

int c, s;
s = getcpu(&c, NULL);
cpu = (s == -1) ? s : c;

See Also

getcpu(2), sched(7)

Referenced By

getcpu(2), procenv(1), pthread_setaffinity_np(3), sched(7), sched_setaffinity(2).

2024-01-01 Linux man-pages 6.7