Man page - pthread_attr_getaffinity_np(3)

Packages contains this manual

Available languages:

en fr ja ru ro de

Manual

pthread_attr_setaffinity_np

НАИМЕНОВАНИЕ
БИБЛИОТЕКА
ОБЗОР
ОПИСАНИЕ
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
ОШИБКИ
АТРИБУТЫ
СТАНДАРТЫ
ИСТОРИЯ
ПРИМЕЧАНИЯ
СМОТРИТЕ ТАКЖЕ
ПЕРЕВОД

НАИМЕНОВАНИЕ

pthread_attr_setaffinity_np, pthread_attr_getaffinity_np - изменяет/возвращает атрибут увязывания ЦП из объекта атрибутов нити

БИБЛИОТЕКА

Библиотека потоков POSIX ( libpthread , -lpthread )

ОБЗОР

#define _GNU_SOURCE /* Смотрите feature_test_macros(7) */
#include <pthread.h>

int pthread_attr_setaffinity_np(pthread_attr_t * attr ,
size_t
cpusetsize , const cpu_set_t * cpuset );
int pthread_attr_getaffinity_np(const pthread_attr_t *
attr ,
size_t
cpusetsize , cpu_set_t * cpuset );

ОПИСАНИЕ

Функция pthread_attr_setaffinity_np () изменяет атрибут маски увязывания ЦП в объекте атрибутов нити, на который указывает attr , в значение cpuset . Данным атрибутом определяется маска увязывания ЦП у нити, созданной с учётом объекта атрибутов нити attr .

Функция pthread_attr_getaffinity_np () возвращает атрибут маски увязывания ЦП из объекта атрибутов нити, на который указывает attr , в буфер на который указывает cpuset .

В аргументе cpusetsize указывается длина буфера (в байтах), на который указывает cpuset . Обычно, этот аргумент должен задаваться как sizeof(cpu_set_t) .

Дополнительную информацию по маскам увязывания ЦП смотрите в sched_setaffinity (2). Описание набора макросов, которые можно использовать для просмотра и изменения наборов ЦП, смотрите в CPU_SET (3).

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

При успешном выполнении эти функции возвращают 0; при ошибке возвращается ненулевой номер ошибки.

ОШИБКИ

EINVAL

( pthread_attr_setaffinity_np ()) В cpuset указан ЦП, который находится вне набора поддерживаемых ядром (в параметре сборки ядра CONFIG_NR_CPUS определён диапазон для набора, поддерживаемого типом данных ядра, который используется для представления наборов ЦП).

EINVAL

( pthread_attr_getaffinity_np ()) ЦП в маске увязывания из объекта атрибутов нити, на который указывает attr , находится вне диапазона, задаваемого cpusetsize (т. е., cpuset / cpusetsize слишком мал).

ENOMEM

( pthread_attr_setaffinity_np ()) Невозможно выделить память.

АТРИБУТЫ

Описание терминов данного раздела смотрите в attributes (7).

Image grohtml-625077-1.png

СТАНДАРТЫ

GNU, о чём свидетельствует наличие суффикса «_np» (nonportable) в именах.

ИСТОРИЯ

glibc 2.3.4.

ПРИМЕЧАНИЯ

В glibc 2.3.3 версии этих функций не имеют аргумента cpusetsize . Вместо него размер набора ЦП, передаваемый используемым системным вызовам, всегда равен sizeof(cpu_set_t) .

СМОТРИТЕ ТАКЖЕ

sched_setaffinity (2), pthread_attr_init (3), pthread_setaffinity_np (3), cpuset (7), pthreads (7)

ПЕРЕВОД

Русский перевод этой страницы руководства разработал(и) Alexey, Azamat Hackimov <azamat.hackimov@gmail.com>, kogamatranslator49 <r.podarov@yandex.ru>, Darima Kogan <silverdk99@gmail.com>, Max Is <ismax799@gmail.com>, Yuri Kozlov <yuray@komyakino.ru>, Иван Павлов <pavia00@gmail.com> и Kirill Rekhov <krekhov.dev@gmail.com>

Этот перевод является свободной программной документацией; он распространяется на условиях общедоступной лицензии GNU (GNU General Public License - GPL, https://www.gnu.org/licenses/gpl-3.0.html версии 3 или более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ.

Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом разработчику(ам) по его(их) адресу(ам) электронной почты или по адресу списка рассылки русских переводчиков .