pthread_mutexattr_getpshared()

Получить значение атрибута совместного использования для заданного мьютекса

Прототип:

#include <pthread.h>
int pthread_mutexattr_getpshared( const pthread_mutexattr_t *attr,
int *pshared );

Аргументы:

attr
Указатель на объект pthread_mutexattr_t, из которого требуется получить атрибут.
pshared
Указатель на область памяти, где функция может хранить атрибут совместного использования.

Библиотека:

libc

Описание:

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

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

Если атрибут совместного использования процесса имеет значение PTHREAD_PROCESS_PRIVATE, доступ к условной переменной могут получить только потоки, созданные в том же процессе, что и поток, который инициализировал условную переменную; если потоки из других процессов пытаются получить доступ к переменной условия PTHREAD_PROCESS_PRIVATE, поведение не определено. Значением по умолчанию для атрибута совместного использования является PTHREAD_PROCESS_PRIVATE.

Возвращаемое значение:

EOK
Успешное завершение.
EINVAL
Некорректный объект атрибутов мьютекса attr.

Классификация:

POSIX 1003.1 THR TSH

Точка остановки потока
Нет
Обработчик прерываний
Нет
Обработчик сигналов
Да
В потоке
Да

Тематические ссылки:

pthread_cond_init(), pthread_create(), pthread_mutex_init(), pthread_mutexattr_setpshared(), pthread_mutexattr_setrecursive(), pthread_mutexattr_settype()




Предыдущий раздел: Описание API системной библиотеки