table of contents
- buster-backports 4.10.0-1~bpo10+1
- testing 4.10.0-1
- unstable 4.10.0-1
CLOCK_GETCPUCLOCKID(3) | Manuel du programmeur Linux | CLOCK_GETCPUCLOCKID(3) |
NOM¶
clock_getcpuclockid - Obtenir l'identifiant de l'horloge CPU d'un processusSYNOPSIS¶
#include <time.h>int clock_getcpuclockid(pid_t pid, clockid_t *clock_id);
Lier avec -lrt (seulement pour les versions de glibc antérieures à 2.17).
Exigences de macros de test de fonctionnalités pour la glibc (consulter
feature_test_macros(7)) :
clock_getcpuclockid() :
DESCRIPTION¶
La fonction clock_getcpuclockid() obtient l'identifiant de l'horloge CPU du processus dont l'identifiant est pid et le renvoie dans l'emplacement pointé par clock_id. Si pid est nul, alors l'identifiant de l'horloge CPU du processus appelant est renvoyé.VALEUR RENVOYÉE¶
En cas de réussite, clock_getcpuclockid() renvoie 0. En cas d'erreur, elle renvoie un numéro d'erreur positif listé dans ERRORS.ERREURS¶
- ENOSYS
- Le noyau ne permet pas d'obtenir l'horloge CPU d'un autre processus et pid ne correspond pas au processus appelant.
- EPERM
- The caller does not have permission to access the CPU-time clock of the process specified by pid. (Specified in POSIX.1-2001; does not occur on Linux unless the kernel does not support obtaining the per-process CPU-time clock of another process.)
- ESRCH
- Il n'y a pas de processus ayant pour identifiant pid
VERSIONS¶
La fonction clock_getcpuclockid() est disponible dans la glibc depuis la version 2.2.ATTRIBUTS¶
Pour une explication des termes utilisés dans cette section, consulter attributes(7).Interface | Attribut | Valeur |
clock_getcpuclockid() | Sécurité des threads | MT-Safe |
CONFORMITɶ
POSIX.1-2001, POSIX.1-2008.NOTES¶
Un appel à clock_gettime(2) avec l'identifiant d'horloge obtenu par un appel à clock_getcpuclockid() avec un pid de 0 revient à utiliser l'identifiant d'horloge CLOCK_PROCESS_CPUTIME_ID.EXEMPLE¶
Le programme d'exemple ci-dessous obtient l'identifiant de l'horloge CPU du processus dont l'identifiant est fourni sur la ligne de commande, puis utilise clock_gettime(2) pour obtenir l'heure de cette horloge. Un exemple d'exécution suit :
$ ./a.out 1 # Show CPU clock of init process CPU-time clock for PID 1 is 2.213466748 seconds
Source du programme¶
#define _XOPEN_SOURCE 600 #include <stdio.h> #include <unistd.h> #include <stdlib.h> #include <time.h> int main(int argc, char *argv[]) { clockid_t clockid; struct timespec ts; if (argc != 2) { fprintf(stderr, "%s <process-ID>\n", argv[0]); exit(EXIT_FAILURE); } if (clock_getcpuclockid(atoi(argv[1]), &clockid) != 0) { perror("clock_getcpuclockid"); exit(EXIT_FAILURE); } if (clock_gettime(clockid, &ts) == -1) { perror("clock_gettime"); exit(EXIT_FAILURE); } printf("CPU-time clock for PID %s is %ld.%09ld seconds\n", argv[1], (long) ts.tv_sec, (long) ts.tv_nsec); exit(EXIT_SUCCESS); }
VOIR AUSSI¶
clock_getres(2), timer_create(2), pthread_getcpuclockid(3), time(7)COLOPHON¶
Cette page fait partie de la publication 5.04 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/.TRADUCTION¶
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> et David Prévot <david@tilapin.org>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.
6 mars 2019 | Linux |