ОБЗОР
#include <sched.h>
int sched_getcpu(void);
Требования макроса тестирования свойств для glibc (см. feature_test_macros(7)):
sched_getcpu():
-
- Начиная с glibc 2.14:
- _GNU_SOURCE
- До glibc 2.14:
-
_BSD_SOURCE || _SVID_SOURCE
/* также достаточно _GNU_SOURCE */
ОПИСАНИЕ
sched_getcpu() возвращает номер центрального процессора, на котором выполняется вызывающая нить.ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
При успешном выполнении sched_getcpu() возвращает неотрицательный номер ЦП. При ошибке возвращается -1 и errno устанавливается в соответствующее значение.ОШИБКИ
- ENOSYS
- В данном ядре getcpu(2) не реализован.
ВЕРСИИ
Эта функция доступна в glibc начиная с версии 2.6.АТРИБУТЫ
Описание терминов данного раздела смотрите в attributes(7).Интерфейс | Атрибут | Значение |
sched_getcpu() | безвредность в нитях | безвредно (MT-Safe) |
СООТВЕТСТВИЕ СТАНДАРТАМ
sched_getcpu() есть только в glibc.ЗАМЕЧАНИЯ
Вызовcpu = sched_getcpu();эквивалентен следующему вызову getcpu(2):
int c, s; s = getcpu(&c, NULL, NULL); cpu = (s == -1) ? s : c;