pthread_attr_setstack(3) Library Functions Manual pthread_attr_setstack(3) pthread_attr_setstack, pthread_attr_getstack - / POSIX (libpthread -lpthread) #include int pthread_attr_setstack(size_t stacksize; pthread_attr_t *attr, void stackaddr[stacksize], size_t stacksize); int pthread_attr_getstack(const pthread_attr_t *restrict attr, void **restrict stackaddr, size_t *restrict stacksize); glibc ( feature_test_macros(7)): pthread_attr_getstack() pthread_attr_setstack(): _POSIX_C_SOURCE >= 200112L pthread_attr_setstack() attr stackaddr stacksize . attr. stackaddr stacksize . . pthread_attr_getstack() attr stackaddr stacksize . 0 . pthread_attr_setstack() : EINVAL stacksize PTHREAD_STACK_MIN (16384) . stackaddr stackaddr + stacksize . POSIX.1 EACCES stackaddr stacksize . attributes(7). +------------+------------------------------------+--------------------+ || | | +------------+------------------------------------+--------------------+ |pthread_attr_setstack()| | MT-Safe | |pthread_attr_getstack()| | | +------------+------------------------------------+--------------------+ POSIX.1-2008. glibc 2.2. POSIX.1-2001. . . ( pthread_attr_setstacksize(3) .) pthread_attr_setstack() . pthread_attr_setguardsize(3). ( ) . stackaddr : (sysconf(_SC_PAGESIZE)). posix_memalign(3) . stacksize . attr pthread_create(3) . pthread_attr_init(3). mmap(2) mprotect(2) posix_memalign(3) pthread_attr_init(3) pthread_attr_setguardsize(3) pthread_attr_setstackaddr(3) pthread_attr_setstacksize(3) pthread_create(3) pthreads(7) 3 . . : . 6.18 28 2025 pthread_attr_setstack(3)