PTHREAD_ATTR_SETSTACKSIZE(3)

NOM
pthread_attr_setstacksize, pthread_attr_getstacksize - Définir ou obtenir la taille de la pile de l'objet d'attributs de thread

SYNOPSIS
#include <pthread.h>
int pthread_attr_setstacksize(pthread_attr_t *attr, size_t stacksize);
int pthread_attr_getstacksize(const pthread_attr_t *attr, size_t *stacksize);

Compilez et effectuez l'édition des liens avec l'option -pthread.

DESCRIPTION
La fonction pthread_attr_setstacksize() définit, à la valeur indiquée par stacksize, l'attribut contenant la taille de la pile dans l'objet d'attributs de thread auquel attr fait référence. L'attribut contenant la taille de la pile détermine la taille minimale (en octets) de la pile qui sera allouée pour les threads créés en utilisant l'objet d'attributs de thread attr. La fonction pthread_attr_getstacksize() renvoie, dans le tampon pointé par stacksize, l'attribut contenant la taille de la pile de l'objet d'attributs de thread attr.

VALEUR RENVOYÉE
En cas de réussite, ces fonctions renvoient 0 ; en cas d'erreur elles renvoient un numéro d'erreur non nul.

ERREURS
pthread_attr_setstacksize() peut échouer avec les erreurs suivantes :

EINVAL
    La taille de la pile est inférieure à PTHREAD_STACK_MIN (16384) octets.

Sur certains systèmes, pthread_attr_setstacksize() peut échouer avec l'erreur EINVAL si stacksize n'est pas un multiple de la taille des pages système.

VERSIONS
Ces fonctions sont fournies par la glibc depuis la version 2.1.

ATTRIBUTS

  Multithreading (voir pthreads(7))
Les fonctions pthread_attr_setstacksize() et pthread_attr_getstacksize() sont sûres dans un contexte multithread.

CONFORMITÉ
POSIX.1-2001.

NOTES
Pour des détails sur la taille par défaut de la pile des nouveaux threads, consultez pthread_create(3). La taille de la pile d'un thread est définie au moment de la création d'un thread. Seul le thread principal peut dynamiquement agrandir sa pile. La fonction pthread_attr_setstack(3) permet à une application de définir à la fois la taille et l'emplacement d'une pile allouée par l'appelant qui doit être utilisée par un thread.

BOGUES
Au moment de la glibc 2.8, si le paramètre stacksize n'est pas un multiple de STACK_ALIGN (16 octets sur la plupart des architectures), la taille peut être réduite, ce qui est contraire à POSIX.1-2001, qui indique que la pile allouée doit être d'au moins stacksize octets.

EXEMPLE
Consultez pthread_create(3).

VOIR AUSSI
getrlimit(2), pthread_attr_init(3), pthread_attr_setguardsize(3), pthread_attr_setstack(3), pthread_create(3), pthreads(7)

COLOPHON
Cette page fait partie de la publication 3.70 du projet man-pages Linux. Une description du projet et des instructions pour signaler des anomalies peuvent être trouvées à l'adresse http://www.kernel.org/doc/man-pages/.

TRADUCTION
Depuis 2010, cette traduction est maintenue à l'aide de l'outil po4a <http://po4a.alioth.debian.org/> par l'équipe de traduction francophone au sein du projet perkamon <http://perkamon.alioth.debian.org/>.

Nicolas François et l'équipe francophone de traduction de Debian (2006-2009).

Veuillez signaler toute erreur de traduction en écrivant à <perkamon-fr@traduc.org>.

Vous pouvez toujours avoir accès à la version anglaise de ce document en utilisant la commande « LC_ALL=C man <section> <page_de_man> ».