Clock_gettime C Fonction

Clock_gettime C Fonction
«La fonction Clock GetTime () récupère le temps actuellement indiqué par l'horloge identifiée par ID d'horloge et l'écrit dans le tampon. La fonction «horloge_gettime ()» renverra 0 ou -1 selon qu'ils réussissent. Avec jusqu'à la précision de la nano, la fonction POSIX "Clock_gettime ()" peut recevoir l'heure à partir d'un large éventail d'horloges différentes. Les horloges peuvent être par processeur ou par thread, surveillant le temps de CPU utilisé par un processus spécifique ou à l'échelle du système, évaluant la même durée pour toutes les opérations.

Dans ce guide, nous passerons par cette fonction «horloge_gettime ()» en détail. Nous effectuerons également des exemples dans lesquels nous utiliserons la fonction «horloge_gettime ()» dans la programmation C."

Syntaxe

int horloge_gettime (horlodid_t horloge_id, struct timeSpec * tp);

Exemple 1

La démonstration des exemples de ce guide sera effectuée à l'aide d'Ubuntu 20.04. L'installation du compilateur GCC vient en premier, après quoi nous lançons l'Ubuntu 20.04 Éditeur de texte et entrez un code. Dans cet éditeur de texte, nous utilisons certains fichiers d'en-tête au début du code C ici. Chaque fois que nous devons écrire le code C, nous avons juste besoin d'ajouter les fichiers d'en-tête. Sans ces fichiers, nous n'obtiendrons pas les fonctions dont nous avons besoin ici dans notre code C.

Ici, vous pouvez voir que nous mettons le «stdio.Fichier d'en-tête h ”à la première ligne du code, qui est le fichier d'en-tête d'entrée et de sortie standard. Ensuite, nous plaçons le «Sys / Time. h »et le« temps. Fichier d'en-tête h ”. Nous avons ajouté ce fichier d'en-tête, nous utiliserons donc la fonction «horloge_gettime ()» dans ce code. Ensuite, nous ajoutons ici la fonction «main ()» et la déclarons comme un type de données «int». Nous passons deux paramètres pour cette fonction «int main ()». Le premier paramètre est «int argc» et le deuxième paramètre est «char ** argv» ici pour la fonction «main ()». Nous déclarons «temps» comme le «struct timespec» à l'intérieur de cette fonction principale ().

En dessous, nous utilisons la fonction "horloge_gettime ()", et nous avons deux paramètres pour la fonction "horloge_gettime ()". Le Clock_gettime prend en charge Clock_boottime, et il est similaire à Clock_monotonic. Le deuxième paramètre ici est le «& time». Nous utilisons ici l'instruction «printf», qui est utilisée pour rendre les informations sur le terminal de sortie. Nous voulons imprimer le temps en quelques secondes, donc nous utilisons «le temps.tv_sec "ici. Il retournera le temps en quelques secondes. Ensuite, nous avons «retour 0» et le code est terminé ici.

Après avoir ouvert le terminal, nous ajoutons la première commande GCC, qui aide à la compilation de ce code C. Lorsque ce code est compilé, alors nous utilisons l'autre commande qui est utilisée pour exécuter le code C. Vous pouvez également voir ces commandes ici dans l'image ci-dessous. Il donne le résultat du code ci-dessus et renvoie l'heure en secondes ici.

Exemple n ° 2

Le «sys / temps. h »et« temps. Les fichiers d'en-tête h ”sont ensuite ajoutés. Pour utiliser la méthode «horloge_gettime ()» dans ce code, nous incluons ce fichier d'en-tête. La fonction «main ()» est ensuite ajoutée, et un type de données «int» est déclaré pour celui-ci. Deux paramètres sont transmis à la méthode «int main ()». Pour la fonction «main ()», les premier et deuxième paramètres sont «int argc» et «char ** argv», respectivement. Dans le corps de cette fonction principale (), «t» est déclaré comme «struct timespec."

Il y a deux paramètres pour cette fonction. La fonction «horloge_gettime ()» prend en charge le démarrage de l'horloge, qui est comme Clock_monotonic. Le «& t» est le deuxième paramètre. Ici, les informations sont rendues sur le terminal de sortie à l'aide de l'instruction «printf». Nous utilisons «t. tv_sec "parce que nous voulons afficher l'heure en quelques secondes. Le temps en secondes sera retourné. Dans la prochaine fonction «printf ()», nous utilisons le «t. tv_nsec », donc il reviendra dans les nanosecondes.

Voici le résultat de ce code, l'heure en secondes et aussi le temps dans les nanosecondes affichés ici. Nous obtenons cette sortie en tapant certaines commandes qui sont affichées dans cette image.

Exemple n ° 3

Nous allons utiliser quatre fichiers d'en-tête différents ici car ces fichiers d'en-tête sont essentiels pour ce code. Nous ajoutons «stdio. h ”,« stdlib. h ”,« unistd. h », et aussi« temps. Fichiers d'en-tête h ”. Ensuite, nous utilisons «définir» pour déclarer une valeur constante ici. Après cela, nous utilisons la fonction «int main ()» et déclarons deux «structures Timespec» différentes avec le nom «Démarrer» et «Stop». Demandez également «l'accumulation» du type de données «double». Nous mettons la fonction «horloge_gettime ()» dans l'instruction «IF» et mettons une condition ici. Nous utilisons ici "horloge_realtime" et "& start" comme paramètres de la fonction "horloge_gettime ()". Si la condition donnée est vraie, il effectuera les instructions qui sont ici dans les accolades bouclées de cette déclaration «IF».

Le «Perror» rendra l'erreur à l'écran. Nous utilisons à nouveau cette fonction «horloge_gettime ()» à l'intérieur du «si» et mettons à nouveau la condition ici. Cette fois, nous passons «& arrêt» comme deuxième paramètre de cette fonction. Nous utilisons à nouveau la «Perror» ici pour cette déclaration «IF». Maintenant, nous initialisons «l'accumulation» ici. Le «TV_SEC» est utilisé pendant le temps en quelques secondes, et le «TV_NSEC» est pour l'époque en nanosecondes. Le «printf» est utilisé pour afficher le résultat de «l'accumulation» sur le terminal. Nous avons également la déclaration «retour» au dernier.

La sortie de l'exemple 3 s'affiche ici dans la capture d'écran ci-dessous. Vous pouvez voir le résultat de «l'accumulation» ici dans cette capture d'écran.

Conclusion

Ce guide montre comment fonctionne la fonction «horloge_gettime ()» dans la programmation C. Ici, nous avons fourni une explication approfondie de la fonction «horloge_gettime ()» ainsi que l'utilisation pratique de la fonction. Pour vous permettre de comprendre comment utiliser la fonction C «Clock_gettime ()», nous avons également inclus la sortie ici. Nous avons expliqué que nous utilisons cette fonction «horloge_gettime ()» pour récupérer l'heure actuellement affichée par l'horloge reconnue par l'ID d'horloge et l'écrire dans le tampon. Nous prévoyons que ce guide élargira votre compréhension des fonctions de programmation C.