.\" -*- coding: UTF-8 -*- '\" t .\" Copyright (c) 2008 Linux Foundation, written by Michael Kerrisk .\" .\" .\" SPDX-License-Identifier: Linux-man-pages-copyleft .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH pthread_attr_setscope 3 "20 июля 2023 г." "Linux man\-pages 6.05.01" .SH ИМЯ pthread_attr_setscope, pthread_attr_getscope \- изменяет/возвращает атрибут области конкурирования из объекта атрибутов нити .SH LIBRARY POSIX threads library (\fIlibpthread\fP, \fI\-lpthread\fP) .SH СИНТАКСИС .nf \fB#include \fP .PP \fBint pthread_attr_setscope(pthread_attr_t *\fP\fIattr\fP\fB, int \fP\fIscope\fP\fB);\fP \fBint pthread_attr_getscope(const pthread_attr_t *restrict \fP\fIattr\fP\fB,\fP \fB int *restrict \fP\fIscope\fP\fB);\fP .fi .SH ОПИСАНИЕ Функция \fBpthread_attr_setscope\fP() изменяет атрибут области конкурирования (contention scope) в объекте атрибутов нити, на который указывает \fIattr\fP, в значение \fIscope\fP. Данным атрибутом определяется набор нитей, с которыми нить конкурирует за ресурсы (например ЦП). В POSIX.1 указаны два возможных значения \fIscope\fP: .TP \fBPTHREAD_SCOPE_SYSTEM\fP Нить конкурирует за ресурсы со всеми нитями всех процессов системы, которые находятся в том же домене планирования выделения (группа из одного или нескольких процессоров). Нити с \fBPTHREAD_SCOPE_SYSTEM\fP запланированы друг относительно друга согласно их политике планирования и приоритета. .TP \fBPTHREAD_SCOPE_PROCESS\fP Нить конкурирует за ресурсы со всеми нитями процесса, в котором она создана, и которые также созданы с областью конкурирования \fBPTHREAD_SCOPE_PROCESS\fP. Нити с \fBPTHREAD_SCOPE_PROCESS\fP запланированы относительно других нитей процесса согласно их политике планирования и приоритета. В POSIX.1 не указано как эти нити конкурируют с нитями из других процессов системы или с другими нитями того же процесса, которые созданы с областью конкурирования \fBPTHREAD_SCOPE_SYSTEM\fP. .PP В POSIX.1 от реализации требуется поддерживать, как минимум, одну из этих областей конкурирования. В Linux поддерживается \fBPTHREAD_SCOPE_SYSTEM\fP и не поддерживается \fBPTHREAD_SCOPE_PROCESS\fP. .PP В системах, где есть поддержка нескольких областей конкурирования, для учёта значения параметра, заданного \fBpthread_attr_setscope\fP(), при вызове \fBpthread_create\fP(3), вызывающий должен использовать \fBpthread_attr_setinheritsched\fP(3) для присвоения атрибуту inherit\-scheduler объекта атрибутов \fIattr\fP значения \fBPTHREAD_EXPLICIT_SCHED\fP. .PP Функция \fBpthread_attr_getscope\fP() возвращает атрибут области конкурирования из объекта атрибутов нити, на который указывает \fIattr\fP, в буфер на который указывает \fIscope\fP. .SH "ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ" При успешном выполнении эти функции возвращают 0; при ошибке возвращается ненулевой номер ошибки. .SH ОШИБКИ Вызов \fBpthread_attr_setscope\fP() может завершиться со следующими ошибками: .TP \fBEINVAL\fP Указано неверное значение в \fIscope\fP. .TP \fBENOTSUP\fP Значение \fIscope\fP равно \fBPTHREAD_SCOPE_PROCESS\fP, которое не поддерживается в Linux. .SH АТРИБУТЫ Описание терминов данного раздела смотрите в \fBattributes\fP(7). .TS allbox; lbx lb lb l l l. Интерфейс Атрибут Значение T{ .na .nh \fBpthread_attr_setscope\fP(), \fBpthread_attr_getscope\fP() T} Безвредность в нитях MT\-Safe .TE .sp 1 .SH СТАНДАРТЫ POSIX.1\-2008. .SH ИСТОРИЯ POSIX.1\-2001. .SH ЗАМЕЧАНИЯ Область конкурирования \fBPTHREAD_SCOPE_SYSTEM\fP обычно означает, что нить пространства пользователя явно привязана к одной единице планирования ядра. В Linux это относится как к устаревшей реализации LinuxThreads так и к новой NPTL, в которых используется привязка нитей 1:1. .PP В POSIX.1 сказано, что значение по умолчанию для области конкурирования оставляется за реализацией. .SH "СМ. ТАКЖЕ" .ad l .nh \fBpthread_attr_init\fP(3), \fBpthread_attr_setaffinity_np\fP(3), \fBpthread_attr_setinheritsched\fP(3), \fBpthread_attr_setschedparam\fP(3), \fBpthread_attr_setschedpolicy\fP(3), \fBpthread_create\fP(3), \fBpthreads\fP(7) .PP .SH ПЕРЕВОД Русский перевод этой страницы руководства был сделан Alexey, Azamat Hackimov , kogamatranslator49 , Kogan, Max Is , Yuri Kozlov и Иван Павлов . .PP Этот перевод является бесплатной документацией; прочитайте .UR https://www.gnu.org/licenses/gpl-3.0.html Стандартную общественную лицензию GNU версии 3 .UE или более позднюю, чтобы узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ. .PP Если вы обнаружите ошибки в переводе этой страницы руководства, пожалуйста, отправьте электронное письмо на .MT man-pages-ru-talks@lists.sourceforge.net .ME .