| GET_NPROCS(3) | Руководство программиста Linux | GET_NPROCS(3) | 
get_nprocs, get_nprocs_conf - возвращает количество процессоров
#include <sys/sysinfo.h>
int get_nprocs(void); int get_nprocs_conf(void);
Функция get_nprocs_conf() возвращает количество процессоров, настроенных операционной системой.
Функция get_nprocs() возвращает количество процессоров, доступных в системе. Это значение может быть меньше чем возвращаемое get_nprocs_conf(), так как процессоры могут быть выключены (например, в системах с подключением на ходу).
Как указано в ОПИСАНИИ.
Описание терминов данного раздела смотрите в attributes(7).
| Интерфейс | Атрибут | Значение | 
| get_nprocs(), get_nprocs_conf() | Безвредность в нитях | MT-Safe | 
Эти функции являются расширениями GNU.
Текущая реализация этих функций не оптимальна, так как при каждом вызове открываются и обрабатываются файлы в файловой системе /sys.
Следующие вызовы sysconf(3) возвращают тоже что и описанные здесь функции.
np = sysconf(_SC_NPROCESSORS_CONF); /* настроенных процессоров */ np = sysconf(_SC_NPROCESSORS_ONLN); /* доступных процессоров */
В следующем примере показано использование get_nprocs() и get_nprocs_conf().
#include <stdlib.h>
#include <stdio.h>
#include <sys/sysinfo.h>
int
main(int argc, char *argv[])
{
    printf("В системе настроено %d процессоров и "
            "%d процессоров доступно.\n",
            get_nprocs_conf(), get_nprocs());
    exit(EXIT_SUCCESS);
}
| 2019-03-06 | GNU |