Provided by: manpages-ru-dev_4.27.0-1_all bug

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

       pthread_attr_setstacksize,  pthread_attr_getstacksize  -  изменяет/возвращает  атрибут  размера  стека  у
       объекта атрибутов нити

БИБЛИОТЕКА

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

ОБЗОР

       #include <pthread.h>

       int pthread_attr_setstacksize(pthread_attr_t *attr, size_t stacksize);
       int pthread_attr_getstacksize(const pthread_attr_t *restrict attr,
                                     size_t *restrict stacksize);

ОПИСАНИЕ

       Функция pthread_attr_setstacksize() изменяет атрибут размера стека у объекта атрибутов нити,  на  который
       указывает attr, в значение stacksize.

       Атрибутом  размера  стека  определяется  минимальный  размер (в байтах), который будет выделен для нитей,
       созданных с учётом объекта атрибутов нити attr.

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

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

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

ОШИБКИ

       Функция pthread_attr_setstacksize() может завершиться со следующей ошибкой:

       EINVAL Размер стека меньше PTHREAD_STACK_MIN (16384) байт.

       В  некоторых  системах  pthread_attr_setstacksize()  может  завершиться  ошибкой  EINVAL,  если  значение
       stacksize не кратно размеру системной страницы.

АТРИБУТЫ

       Описание терминов данного раздела смотрите в attributes(7).
       ┌─────────────────────────────────────────────────────────────────────┬──────────────────────┬──────────┐
       │ ИнтерфейсАтрибутЗначение │
       ├─────────────────────────────────────────────────────────────────────┼──────────────────────┼──────────┤
       │ pthread_attr_setstacksize(), pthread_attr_getstacksize()            │ Безвредность в нитях │ MT-Safe  │
       └─────────────────────────────────────────────────────────────────────┴──────────────────────┴──────────┘

ВЕРСИИ

       Эти функции доступны начиная с glibc 2.1.

СТАНДАРТЫ

       POSIX.1-2001, POSIX.1-2008.

ПРИМЕЧАНИЯ

       Подробную информацию о размере стека по умолчанию для новых нитей смотрите в pthread_create(3).

       Размер стека нити не изменяется во время создания нити. Только главная нить может динамически увеличивать
       свой стек.

       Функция  pthread_attr_setstack(3)  позволяет  приложению  изменять  размер и положение стека вызывающего,
       который будет использован нитью.

ОШИБКИ

       Как указано в glibc 2.8, если  указанное  значение  stacksize  не  кратно  STACK_ALIGN  (для  большинства
       архитектур  16  байт),  то  оно  может  быть  округлено  в меньшую сторону, нарушая при этом POSIX.1, где
       говорится, что выделенный стек должен быть не менее stacksize байт.

ПРИМЕРЫ

       Смотрите pthread_create(3).

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

       getrlimit(2),     pthread_attr_init(3),      pthread_attr_setguardsize(3),      pthread_attr_setstack(3),
       pthread_create(3), 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 или
       более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ.

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

Справочные страницы Linux 6.9.1                   2 мая 2024 г.                     pthread_attr_setstacksize(3)