.\" -*- coding: UTF-8 -*- '\" t .\" Copyright (c) 2008 Linux Foundation, written by Michael Kerrisk .\" .\" .\" SPDX-License-Identifier: Linux-man-pages-copyleft .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH pthread_attr_setstack 3 "15 décembre 2022" "Pages du manuel de Linux 6.03" .SH NOM pthread_attr_setstack, pthread_attr_getstack \- Définir ou obtenir les attributs de pile d'un objet d'attributs de thread .SH BIBLIOTHÈQUE Bibliothèque de threads POSIX (\fIlibpthread\fP, \fI\-lpthread\fP) .SH SYNOPSIS .nf \fB#include \fP .PP \fBint pthread_attr_setstack(pthread_attr_t *\fP\fIattr\fP\fB,\fP \fB void \fP\fIstackaddr\fP\fB[.\fP\fIstacksize\fP\fB],\fP \fB size_t \fP\fIstacksize\fP\fB);\fP \fBint pthread_attr_getstack(const pthread_attr_t *restrict \fP\fIattr\fP\fB,\fP \fB void **restrict \fP\fIstackaddr\fP\fB,\fP \fB size_t *restrict \fP\fIstacksize\fP\fB);\fP .fi .PP .RS -4 Exigences de macros de test de fonctionnalités pour la glibc (consulter \fBfeature_test_macros\fP(7))\ : .RE .PP \fBpthread_attr_getstack\fP(), \fBpthread_attr_setstack\fP()\ : .nf _POSIX_C_SOURCE >= 200112L .fi .SH DESCRIPTION La fonction \fBpthread_attr_setstack\fP() définit l'adresse et la taille de la pile dans l'objet d'attributs de thread auquel \fIattr\fP fait référence, à partir des valeurs indiquées par \fIstackaddr\fP et \fIstacksize\fP respectivement. Ces attributs indique l'emplacement et la taille de la pile qui doit être utilisée par un thread qui est créé en utilisant \fIattr\fP. .PP \fIstackaddr\fP devrait pointer vers l'octet adressable d'adresse la plus basse d'un tampon de \fIstacksize\fP octets, alloué par l'appelant. Les pages du tampon alloué devraient être accessibles en lecture et écriture. .PP La fonction \fBpthread_attr_getstack\fP() renvoie, respectivement dans les tampons pointé par \fIstackaddr\fP et \fIstacksize\fP, l'adresse et la taille de la pile d'un objet d'attributs de thread auquel \fIattr\fP fait référence. .SH "VALEUR RENVOYÉE" En cas de succès, ces fonctions renvoient \fB0\fP\ ; en cas d'erreur, elles renvoient un code d'erreur non nul. .SH ERREURS \fBpthread_attr_setstack\fP() peut échouer avec les erreurs suivantes\ : .TP \fBEINVAL\fP \fIstacksize\fP is less than \fBPTHREAD_STACK_MIN\fP (16384) bytes. On some systems, this error may also occur if \fIstackaddr\fP or \fIstackaddr\~+\~stacksize\fP is not suitably aligned. .PP POSIX.1 also documents an \fBEACCES\fP error if the stack area described by \fIstackaddr\fP and \fIstacksize\fP is not both readable and writable by the caller. .SH VERSIONS These functions are provided since glibc 2.2. .SH ATTRIBUTS Pour une explication des termes utilisés dans cette section, consulter \fBattributes\fP(7). .ad l .nh .TS allbox; lbx lb lb l l l. Interface Attribut Valeur T{ \fBpthread_attr_setstack\fP(), \fBpthread_attr_getstack\fP() T} Sécurité des threads MT\-Safe .TE .hy .ad .sp 1 .SH STANDARDS POSIX.1\-2001, POSIX.1\-2008. .SH NOTES Ces fonctions sont fournies pour les applications qui doivent assurer que la pile d'un thread se trouve à un emplacement particulier. Pour la plupart des applications, ce n'est pas nécessaire, et l'utilisation de cette fonction devrait être évitée. (Utilisez \fBpthread_attr_setstacksize\fP(3) si une application a juste besoin d'une pile de taille différente de la taille par défaut.) .PP Quand une application utilise \fBpthread_attr_setstack\fP(), elle prend la responsabilité d'allouer la pile. Si une taille de garde a été définie en utilisant \fBpthread_attr_setguardsize\fP(3), elle est ignorée. Si c'est nécessaire, l'application est responsable de l'allocation d'une zone de protection (une page ou plus protégées en lecture et écriture) pour prendre en charge la possibilité d'un débordement de pile. .PP L'adresse indiquée par \fIstackaddr\fP devrait être alignée correctement\ : pour une compatibilité complète, il faut l'aligner sur une limite de page (\fIsysconf(_SC_PAGESIZE)\fP). \fBposix_memalign\fP(3) peut être utile pour l'allocation. \fIstacksize\fP devrait probablement aussi être un multiple de la taille des pages système. .PP Si \fIattr\fP est utilisé pour créer plusieurs threads, alors l'appelant doit changer l'attribut de l'adresse de la pile entre les appels à \fBpthread_create\fP(3)\ ; sinon, les threads vont chercher à utiliser la même zone mémoire pour leurs piles, ce qui ne pourra que créer du chaos. .SH EXEMPLES Consultez \fBpthread_attr_init\fP(3). .SH "VOIR AUSSI" .ad l .nh \fBmmap\fP(2), \fBmprotect\fP(2), \fBposix_memalign\fP(3), \fBpthread_attr_init\fP(3), \fBpthread_attr_setguardsize\fP(3), \fBpthread_attr_setstackaddr\fP(3), \fBpthread_attr_setstacksize\fP(3), \fBpthread_create\fP(3), \fBpthreads\fP(7) .PP .SH TRADUCTION La traduction française de cette page de manuel a été créée par Christophe Blaess , Stéphan Rafin , Thierry Vignaud , François Micaux, Alain Portal , Jean-Philippe Guérard , Jean-Luc Coulon (f5ibh) , Julien Cristau , Thomas Huriaux , Nicolas François , Florentin Duneau , Simon Paillard , Denis Barbier , David Prévot et Frédéric Hantrais . .PP Cette traduction est une documentation libre ; veuillez vous reporter à la .UR https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License version 3 .UE concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE. .PP Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à .MT debian-l10n-french@lists.debian.org .ME .