pthread_attr_setdetachstate, pthread_attr_getdetachstate -
изменяет/возвращает
из объекта
атрибутов
нити
атрибут
отключённости
POSIX threads library (
libpthread,
-lpthread)
#include <pthread.h>
int pthread_attr_setdetachstate(pthread_attr_t *attr, int detachstate);
int pthread_attr_getdetachstate(const pthread_attr_t *attr,
int *detachstate);
Функция
pthread_attr_setdetachstate()
изменяет
атрибут
состояния
отключённости
у объекта
атрибутов
нити, на
который
указывает
attr, на
значение,
заданное в
detachstate.
Атрибутом
состояния
отключённости
определяется,
будет ли
нить,
созданная
с объектом
атрибутов
нити
attr,
находиться
в
присоединяемом
или
отключённом
состоянии.
В
detachstate можно
указать
следующие
значения:
- PTHREAD_CREATE_DETACHED
- Нити,
создаваемые
с attr, будут
созданы в
отключённом
состоянии.
- PTHREAD_CREATE_JOINABLE
- Нити,
создаваемые
с attr, будут
созданы в
присоединяемом
состоянии.
Значением
по
умолчанию
для
атрибута
состояния
отключённости
в
инициализируемом
объекте
атрибутов
нити
является
PTHREAD_CREATE_JOINABLE.
Функция
pthread_attr_getdetachstate()
возвращает
атрибут
состояния
отключённости
нити у
объекта
атрибутов
нити, на
который
указывает
attr, в буфер
на который
указывает
detachstate.
При
успешном
выполнении
эти
функции
возвращают
0; при ошибке
возвращается
ненулевой
номер
ошибки.
Функция
pthread_attr_setdetachstate() может
завершиться
со
следующей
ошибкой:
- EINVAL
- Указано
неверное
значение в
detachstate.
Описание
терминов
данного
раздела
смотрите в
attributes(7).
Интерфейс |
Атрибут |
Значение |
pthread_attr_setdetachstate(),
pthread_attr_getdetachstate() |
Безвредность
в нитях |
MT-Safe |
POSIX.1-2001, POSIX.1-2008.
Дополнительную
информацию
об
отключённых
и
присоединяемых
нитях
смотрите в
pthread_create(3).
Нить,
созданная
в
присоединяемом
состоянии,
должна
быть в
последствии
присоединена
с помощью
pthread_join(3) или
отключена
с помощью
pthread_detach(3);
смотрите
pthread_create(3).
Если
указать ID
нити,
которая
была
создана в
отключённом
состоянии
в вызове
pthread_detach(3) или
pthread_join(3),
то
возникает
ошибка.
Смотрите
pthread_attr_init(3).
pthread_attr_init(3),
pthread_create(3),
pthread_detach(3),
pthread_join(3),
pthreads(7)
Русский
перевод
этой
страницы
руководства
был сделан
Alexey, Azamat Hackimov <
[email protected]>, kogamatranslator49
<
[email protected]>, Kogan, Max Is <
[email protected]>, Yuri
Kozlov <
[email protected]> и Иван
Павлов <
[email protected]>
Этот
перевод
является
бесплатной
документацией;
прочитайте
Стандартную
общественную
лицензию GNU
версии 3
или более
позднюю,
чтобы
узнать об
условиях
авторского
права. Мы не
несем
НИКАКОЙ
ОТВЕТСТВЕННОСТИ.
Если вы
обнаружите
ошибки в
переводе
этой
страницы
руководства,
пожалуйста,
отправьте
электронное
письмо на
[email protected]