PTHREAD_ATTR_SETSTACKADDR(3) Manuel du programmeur Linux PTHREAD_ATTR_SETSTACKADDR(3)

pthread_attr_setstackaddr, pthread_attr_getstackaddr - Définir ou obtenir l'adresse de la pile de l'objet d'attributs de thread

#include <pthread.h>
int pthread_attr_setstackaddr(pthread_attr_t *attr, void *stackaddr);
int pthread_attr_getstackaddr(const pthread_attr_t *restrict attr,
                              void **restrict stackaddr);
Compiler et éditer les liens avec -pthreads.

Ces fonctions sont obsolètes : ne les utilisez pas. Utilisez pthread_attr_setstack(3) et pthread_attr_getstack(3) à la place.

La fonction pthread_attr_setstackaddr() définit, à la valeur indiquée dans stackaddr, l'attribut d'adresse de la pile de l'objet d'attributs de thread attr. Cet attribut indique l'emplacement de la pile qui devrait être utilisée par un thread créé en utilisant l'objet d'attributs de thread attr.

stackaddr devrait pointer vers un tampon d'au moins PTHREAD_STACK_MIN octets, alloué par l'appelant. Les pages du tampon alloué devraient être accessibles à la fois en lecture et en écriture.

La fonction pthread_attr_getstackaddr() renvoie, dans le tampon pointé par stackaddr, l'attribut d'adresse de la pile de l'objet d'attributs de thread attr.

En cas de succès, ces fonctions renvoient 0 ; en cas d'erreur, elles renvoient un code d'erreur non nul.

Aucune erreur n'est définie (mais les applications devraient néanmoins prendre en charge un possible code d'erreur).

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

Pour une explication des termes utilisés dans cette section, consulter attributes(7).

Interface Attribut Valeur
pthread_attr_setstackaddr(), pthread_attr_getstackaddr() Sécurité des threads MT-Safe

POSIX.1-2001 spécifie ces fonctions, mais les marque comme étant obsolètes. POSIX.1-2008 supprime la spécification de ces fonctions.

N'utilisez pas ces fonction ! Elles ne peuvent pas être utilisées de façon portable, puisqu'elle ne fournissent aucun moyen d'indiquer la direction ni l'intervalle de la pile. Par exemple, sur une architecture où la pile croit vers le bas, stackaddr indique l'adresse après l'adresse la plus haute de la zone de pile. Mais sur les architectures dont la pile croit vers le haut, stackaddr indique l'adresse la plus basse de la zone de pile allouée. A l'opposé, le paramètre stackaddr utilisé par pthread_attr_setstack(3) et pthread_attr_getstack(3) est toujours un pointeur vers l'adresse la plus basse de la zone de pile allouée (et le paramètre stacksize indique l'intervalle de la pile).

pthread_attr_init(3), pthread_attr_setstack(3), pthread_attr_setstacksize(3), pthread_create(3), pthreads(7)

Cette page fait partie de la publication 5.13 du projet man-pages Linux. Une description du projet et des instructions pour signaler des anomalies et la dernière version de cette page peuvent être trouvées à l'adresse https://www.kernel.org/doc/man-pages/.

La traduction française de cette page de manuel a été créée par Christophe Blaess https://www.blaess.fr/christophe/, Stéphan Rafin <stephan.rafin@laposte.net>, Thierry Vignaud <tvignaud@mandriva.com>, François Micaux, Alain Portal <aportal@univ-montp2.fr>, Jean-Philippe Guérard <fevrier@tigreraye.org>, Jean-Luc Coulon (f5ibh) <jean-luc.coulon@wanadoo.fr>, Julien Cristau <jcristau@debian.org>, Thomas Huriaux <thomas.huriaux@gmail.com>, Nicolas François <nicolas.francois@centraliens.net>, Florentin Duneau <fduneau@gmail.com>, Simon Paillard <simon.paillard@resel.enst-bretagne.fr>, Denis Barbier <barbier@debian.org>, David Prévot <david@tilapin.org> et Frédéric Hantrais <fhantrais@gmail.com>

Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.

Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à debian-l10n-french@lists.debian.org.

22 mars 2021 Linux