Participer au site avec un Tip
Rechercher
 

Améliorations / Corrections

Vous avez des améliorations (ou des corrections) à proposer pour ce document : je vous remerçie par avance de m'en faire part, cela m'aide à améliorer le site.

Emplacement :

Description des améliorations :

Vous êtes un professionnel et vous avez besoin d'une formation ? Programmation avec
Le langage C
Voir le programme détaillé

Fonction clock_nanosleep (POSIX)

Entête à inclure

#include <time.h>

Fonction clock_nanosleep

int clock_nanosleep( clockid_t clock_id, int flags, const struct timespec *rqtp, struct timespec *rmtp );

Suspend le thread courant selon une horloge POSIX.

Cet élément est fourni par POSIX. Il peut nécessiter l'activation d'une macro de visibilité POSIX avant l'inclusion de l'entête.

Exemple de code

Cet exemple suspend brièvement le thread courant en s'appuyant sur l'horloge monotone. Contrairement à nanosleep, l'erreur est retournée directement par la fonction.

 1 
 2 
 3 
 4 
 5 
 6 
 7 
 8 
 9 
 10 
 11 
 12 
 13 
 14 
 15 
 16 
 17 
 18 
 19 
 20 
 21 
#define _POSIX_C_SOURCE 200809L

#include <errno.h>
#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int main() {

    struct timespec delay = { 0, 1000000L };
    int status = clock_nanosleep( CLOCK_MONOTONIC, 0, &delay, NULL );

    if ( status != 0 ) {
        errno = status;
        perror( "clock_nanosleep" );
        return EXIT_FAILURE;
    }

    printf( "Pause terminee.\n" );
    return EXIT_SUCCESS;
}
Exemple d'utilisation de la fonction clock_nanosleep

Cet exemple produit l'affichage suivant.

Pause terminee.

Sujets connexes

La librairie <time.h>


Vous êtes un professionnel et vous avez besoin d'une formation ? Programmation avec
Le langage C
Voir le programme détaillé