.\" -*- coding: UTF-8 -*- '\" t .\" Copyright (c) 2016 Michael Kerrisk .\" .\" SPDX-License-Identifier: Linux-man-pages-copyleft .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH pthread_getattr_default_np 3 "20 juillet 2023" "Pages du manuel de Linux 6.05.01" .SH NOM pthread_attr_setaffinity_np, pthread_attr_getaffinity_np –\ Définir ou obtenir les attributs de création de thread .SH BIBLIOTHÈQUE Bibliothèque de threads POSIX (\fIlibpthread\fP, \fI\-lpthread\fP) .SH SYNOPSIS .nf \fB#define _GNU_SOURCE\fP /* Consultez feature_test_macros(7) */ \fB#include \fP .PP \fBint pthread_getattr_default_np(pthread_attr_t *\fP\fIattr\fP\fB);\fP \fBint pthread_setattr_default_np(const pthread_attr_t *\fP\fIattr\fP\fB);\fP .fi .SH DESCRIPTION La fonction \fBpthread_setattr_default_np\fP() règle les attributs par défaut qui sont utilisés pour créer un nouveau thread \[em]\ c'est\-à\-dire les attributs qui sont utilisés quand \fBpthread_create\fP(3) est appelé avec un second attribut de valeur NULL. Les attributs par défaut sont réglés avec les attributs fournis par \fI*attr\fP, un objet d'attributs de thread initialisé auparavant. Veuillez noter les détails suivants sur l'objet d'attributs fourni\ : .IP \- 3 Les réglages d'attributs dans l'objet doivent être valables. .IP \- L'attribut \fIadresse de pile\fP ne doit pas être défini dans l'objet. .IP \- Régler l'attribut \fItaille de pile\fP à zéro signifie laisser inchangée la taille de pile par défaut. .PP La fonction \fBpthread_getattr_default_np\fP() initialise l'objet d'attributs de thread auquel \fIattr\fP fait référence de telle sorte qu'il contienne les valeurs d'attributs par défaut utilisées pour la création du thread. .SH ERREURS .TP \fBEINVAL\fP (\fBpthread_setattr_default_np\fP()) Un des réglages d'attribut dans \fIattr\fP n'est pas valable ou l'attribut \fIadresse de pile\fP est défini dans \fIattr\fP. .TP \fBENOMEM\fP .\" Can happen (but unlikely) while trying to allocate memory for cpuset (\fBpthread_setattr_default_np\fP()) Il n'y a pas assez de mémoire. .SH ATTRIBUTS Pour une explication des termes utilisés dans cette section, consulter \fBattributes\fP(7). .TS allbox; lbx lb lb l l l. Interface Attribut Valeur T{ .na .nh \fBpthread_getattr_default_np\fP(), \fBpthread_setattr_default_np\fP() T} Sécurité des threads MT\-Safe .TE .sp 1 .SH STANDARDS GNU\ ; c'est la raison du suffixe «\ _np\ » (non portable) dans leur nom. .SH HISTORIQUE glibc 2.18. .SH EXEMPLES Le programme ci\-dessous utilise \fBpthread_getattr_default_np\fP() pour récupérer les attributs par défaut de création de thread, puis affiche divers réglages de l'objet renvoyé d'attributs de thread. Lors de l'exécution du programme, la sortie suivante est affichée\ : .PP .in +4n .EX $ \fB./a.out\fP Stack size: 8388608 Guard size: 4096 Scheduling policy: SCHED_OTHER Scheduling priority: 0 Detach state: JOINABLE Inherit scheduler: INHERIT .EE .in .SS "Source du programme" .\" SRC BEGIN (pthread_getattr_default_np.c) \& .EX #define _GNU_SOURCE #include #include #include #include #include \& static void display_pthread_attr(pthread_attr_t *attr) { int s; size_t stacksize; size_t guardsize; int policy; struct sched_param schedparam; int detachstate; int inheritsched; \& s = pthread_attr_getstacksize(attr, &stacksize); if (s != 0) errc(EXIT_FAILURE, s, "pthread_attr_getstacksize"); printf("Stack size: %zd\en", stacksize); \& s = pthread_attr_getguardsize(attr, &guardsize); if (s != 0) errc(EXIT_FAILURE, s, "pthread_attr_getguardsize"); printf("Guard size: %zd\en", guardsize); \& s = pthread_attr_getschedpolicy(attr, &policy); if (s != 0) errc(EXIT_FAILURE, s, "pthread_attr_getschedpolicy"); printf("Scheduling policy: %s\en", (policy == SCHED_FIFO) ? "SCHED_FIFO" : (policy == SCHED_RR) ? "SCHED_RR" : (policy == SCHED_OTHER) ? "SCHED_OTHER" : "[unknown]"); \& s = pthread_attr_getschedparam(attr, &schedparam); if (s != 0) errc(EXIT_FAILURE, s, "pthread_attr_getschedparam"); printf("Scheduling priority: %d\en", schedparam.sched_priority); \& s = pthread_attr_getdetachstate(attr, &detachstate); if (s != 0) errc(EXIT_FAILURE, s, "pthread_attr_getdetachstate"); printf("Detach state: %s\en", (detachstate == PTHREAD_CREATE_DETACHED) ? "DETACHED" : (detachstate == PTHREAD_CREATE_JOINABLE) ? "JOINABLE" : "???"); \& s = pthread_attr_getinheritsched(attr, &inheritsched); if (s != 0) errc(EXIT_FAILURE, s, "pthread_attr_getinheritsched"); printf("Inherit scheduler: %s\en", (inheritsched == PTHREAD_INHERIT_SCHED) ? "INHERIT" : (inheritsched == PTHREAD_EXPLICIT_SCHED) ? "EXPLICIT" : "???"); } \& int main(void) { int s; pthread_attr_t attr; \& s = pthread_getattr_default_np(&attr); if (s != 0) errc(EXIT_FAILURE, s, "pthread_getattr_default_np"); \& display_pthread_attr(&attr); \& exit(EXIT_SUCCESS); } .EE .\" SRC END .SH "VOIR AUSSI" .ad l .nh \fBpthread_attr_getaffinity_np\fP(3), \fBpthread_attr_getdetachstate\fP(3), \fBpthread_attr_getguardsize\fP(3), \fBpthread_attr_getinheritsched\fP(3), \fBpthread_attr_getschedparam\fP(3), \fBpthread_attr_getschedpolicy\fP(3), \fBpthread_attr_getscope\fP(3), \fBpthread_attr_getstack\fP(3), \fBpthread_attr_getstackaddr\fP(3), \fBpthread_attr_getstacksize\fP(3), \fBpthread_attr_init\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 , Frédéric Hantrais et Jean-Pierre Giraud . .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 .