funzione clock_gettime c

funzione clock_gettime c
“L'orologio GetTime () recupera il tempo attualmente mostrato dall'orologio identificato dall'ID orologio e lo scrive al buffer. La funzione "clock_gettime ()" restituirà 0 o -1 a seconda che abbiano successo. Con una precisione fino a nano, la funzione POSIX funzione “clock_gettime ()” può ricevere il tempo da una vasta gamma di orologi diversi. Gli orologi possono essere per processore o per-thread, monitorando il tempo della CPU utilizzato da un processo specifico o a livello di sistema, valutando lo stesso tempo per tutte le operazioni.

In questa guida, passeremo attraverso questa funzione "clock_gettime ()" in dettaglio profondo. Eseguiremo anche esempi in cui utilizzeremo la funzione "clock_gettime ()" nella programmazione C."

Sintassi

int clock_getTime (clockid_t clock_id, struct timespec *tp);

Esempio 1

La dimostrazione degli esempi in questa guida verrà eseguita usando Ubuntu 20.04. L'installazione del compilatore GCC arriva per primo, dopo di che lanciamo Ubuntu 20.04 Editor di testo e inserisci qualche codice. In questo editor di testo, stiamo utilizzando alcuni file di intestazione all'inizio del codice C qui. Ogni volta che dobbiamo scrivere il codice C, dobbiamo solo aggiungere i file di intestazione. Senza questi file, non otterremo le funzioni di cui abbiamo bisogno qui nel nostro codice C.

Qui, puoi vedere che mettiamo lo "stdio.H ”file di intestazione nella prima riga del codice, che è il file di intestazione di input e output standard. Quindi posizioniamo il "sistema/tempo. h "e" tempo. File di intestazione h ". Abbiamo aggiunto questo file di intestazione, quindi utilizzeremo la funzione "clock_gettime ()" in questo codice. Quindi aggiungiamo la funzione "main ()" qui e la dichiariamo come un tipo di dati "int". Passiamo due parametri per questa funzione "int main ()". Il primo parametro è "int argc" e il secondo parametro è "char ** argv" qui per la funzione "main ()". Dichiariamo "tempo" come "struct timespec" all'interno di questa funzione principale ().

Di seguito, utilizziamo la funzione "clock_gettime ()" e abbiamo due parametri per la funzione "clock_gettime ()". Clock_gettime supporta clock_boottime ed è simile a clock_monotonic. Il secondo parametro qui è il "& time". Utilizziamo qui l'istruzione "printf", che viene utilizzata per rendere le informazioni sul terminale di output. Vogliamo stampare il tempo in pochi secondi, quindi utilizziamo "tempo.TV_SEC ”qui. Restituirà il tempo in pochi secondi. Quindi abbiamo "return 0" e il codice è completato qui.

Dopo aver aperto il terminale, aggiungiamo il primo comando GCC, che aiuta nella compilazione di questo codice C. Quando viene compilato questo codice, utilizziamo l'altro comando utilizzato per l'esecuzione del codice C. Puoi anche vedere questi comandi qui nell'immagine qui sotto. Dà il risultato del codice sopra e restituisce il tempo in pochi secondi qui.

Esempio n. 2

Il "sistema/tempo. H "e" Time. Vengono quindi aggiunti i file di intestazione h ". Per utilizzare il metodo "clock_gettime ()" in questo codice, includiamo questo file di intestazione. Viene quindi aggiunta la funzione "Main ()" e viene dichiarato un tipo di dati "int". Due parametri vengono passati al metodo "int main ()". Per la funzione "main ()", il primo e il secondo parametri sono rispettivamente "int argc" e "char ** argv",. All'interno del corpo di questa funzione principale (), "t" viene dichiarato come "struct timespec."

Esistono due parametri per questa funzione. La funzione "clock_gettime ()" supporta l'orologio Boottime, che è come clock_monotonic. Il "& t" è il secondo parametro. Qui, le informazioni sono rese sul terminale di output utilizzando l'istruzione "printf". Usiamo “T. TV_SEC ”perché vogliamo visualizzare il tempo in secondi. Verrà restituito il tempo in secondi. Nella prossima funzione "printf ()", utilizziamo la "T. tv_nsec ", quindi restituirà tempo in nanosecondi.

Ecco il risultato di questo codice, il tempo in secondi e anche il tempo in nanosecondi visualizzati qui. Ottiamo questo output digitando alcuni comandi che sono mostrati in questa immagine.

Esempio n. 3

Utilizzeremo quattro diversi file di intestazione qui perché questi file di intestazione sono fondamentali per questo codice. Stiamo aggiungendo "stdio. H "," stdlib. h "," unistd. h ", e anche" tempo. File di intestazione h ". Quindi usiamo "Defining" per dichiarare un valore costante qui. Successivamente, utilizziamo la funzione "int main ()" e dichiariamo due diversi "struct timespec" con il nome "start" e "stop". Inoltre, dichiarare "accum" del tipo di dati "doppio". Mettiamo la funzione "clock_gettime ()" nell'istruzione "if" e mettiamo una condizione qui. Stiamo usando "clock_realtime" e "& start" qui come parametri della funzione "clock_gettime ()". Se la condizione data è vera, eseguirà le dichiarazioni che sono qui nelle parentesi graffe di questa dichiarazione "if".

Il "Perror" renderà l'errore sullo schermo. Utilizziamo di nuovo questa funzione "clock_gettime ()" all'interno della "if" e di nuovo mettiamo la condizione qui. Questa volta passiamo "e fermiamo" come secondo parametro di questa funzione. Utilizziamo di nuovo la "Perror" qui per questa affermazione "if". Ora inizializziamo il "accum" qui. Il "TV_SEC" viene utilizzato per il tempo in secondi e il "TV_NSEC" è per il tempo in nanosecondi. La "printf" viene utilizzata per visualizzare il risultato di "accum" sul terminale. Abbiamo anche la dichiarazione "ritorno" all'ultimo.

L'output dell'esempio 3 viene visualizzata qui nello screenshot seguente. Puoi vedere il risultato del "accum" qui in questo screenshot.

Conclusione

Questa guida dimostra come funziona la funzione "clock_gettime ()" nella programmazione C. Qui, abbiamo fornito una spiegazione approfondita della funzione "clock_gettime ()" e l'uso pratico della funzione. Per rendere semplice per te capire come utilizzare la funzione C "clock_gettime ()", abbiamo anche incluso l'output qui. Abbiamo spiegato che utilizziamo questa funzione "clock_gettime ()" per il recupero del tempo attualmente visualizzato dall'orologio riconosciuto dall'ID dell'orologio e scrivendolo al buffer. Prevediamo che questa guida amplierà la tua comprensione delle funzioni di programmazione C.