pthread_mutexattr_getpshared(3)

ИМЯ
pthread_mutexattr_getpshared, pthread_mutexattr_setpshared - возвращает/изменяет общепроцессный атрибут мьютекса

LIBRARY
POSIX threads library (libpthread, -lpthread)

СИНТАКСИС
#include <pthread.h>

int pthread_mutexattr_getpshared(
                      const pthread_mutexattr_t *restrict attr,
                      int *restrict pshared);
int pthread_mutexattr_setpshared(pthread_mutexattr_t *attr,
                      int pshared);

ОПИСАНИЕ
Эти функции возвращают и изменяют общепроцессный атрибут мьютекса в объекте атрибутов мьютекса. Данный атрибут должен быть установлен соответствующим образом для обеспечения правильной, эффективной работы мьютекса, созданного с использованием данного объекта атрибутов.

В общепроцессном аргументе можно указать одно из следующих значений:

PTHREAD_PROCESS_PRIVATE
    Мьютексы, созданные с таким объектом атрибутов, будут считаться общими только для нитей одного процесса, инициализировавшего мьютекс. Это значение используется по умолчанию для общепроцессного атрибута мьютекса.

PTHREAD_PROCESS_SHARED
    Мьютексы, созданные с таким объектом атрибутов, будут считаться общими между всеми нитями, имеющими доступ к памяти, содержащей объект, даже нити разных процессов.

Функция pthread_mutexattr_getpshared() помещает значения общепроцессного атрибута объекта атрибутов мьютекса, на который указывает attr, в расположение, указанное в pshared.

Функция pthread_mutexattr_setpshared() изменяет значения общепроцессного атрибута объекта атрибутов мьютекса, на который указывает attr, на значение, заданное в pshared.

Если attr не ссылается на инициализированный объект атрибутов мьютекса, то поведение не определено.

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
При успешном выполнении эти функции возвращают 0. При ошибке возвращается положительный номер ошибки.

ОШИБКИ
Функция pthread_mutexattr_setpshared() может завершаться со следующими ошибками:

EINVAL
    Неверное значение в pshared.

ENOTSUP
    Значение pshared равно PTHREAD_PROCESS_SHARED, но реализация не поддерживает общепроцессные мьютексы.

СТАНДАРТЫ
POSIX.1-2001, POSIX.1-2008.

СМ. ТАКЖЕ
pthread_mutexattr_init(3), pthreads(7)

ПЕРЕВОД
Русский перевод этой страницы руководства был сделан Alexey, Azamat Hackimov <azamat.hackimov@gmail.com>, kogamatranslator49 <r.podarov@yandex.ru>, Kogan, Max Is <ismax799@gmail.com>, Yuri Kozlov <yuray@komyakino.ru> и Иван Павлов <pavia00@gmail.com>

Этот перевод является бесплатной документацией; прочитайте Стандартную общественную лицензию GNU версии 3 (https://www.gnu.org/licenses/gpl-3.0.html) или более позднюю, чтобы узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ.

Если вы обнаружите ошибки в переводе этой страницы руководства, пожалуйста, отправьте электронное письмо на man-pages-ru-talks@lists.sourceforge.net.