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

ИМЯ

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

LIBRARY

       POSIX threads library (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  │
       └─────────────────────────────────────────────────────────────────────┴──────────────────────┴──────────┘

ВЕРСИИ

       These functions are provided since 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>

       Этот перевод является свободной программной документацией; он распространяется на условиях  общедоступной
       лицензии  GNU  (GNU  General Public License - GPL, https://www.gnu.org/licenses/gpl-3.0.html версии 3 или
       более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ.

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

Linux man-pages 6.8                               2 мая 2024 г.                     pthread_attr_setstacksize(3)