Ottenere con le risorse della libreria Libc.so.6 il tempo impiegato per eseguire un programma

Da Gambas-it.org - Wikipedia.

Con la funzione esterna clock() della libreria libc.so.6 è possibile conoscere il tempo impiegato per eseguire utto o parte del codice di un programma.

In particolare la funzione esterna clock() restituisce il numero di tick di clock trascorsi da quando il programma è stato lanciato.

Per poter utilizzare in Gambas la predetta funzione clock() è necessario richiamare la libreria dinamica condivisa: libc.so.6


Mostriamo un semplice esempio:

Library "libc:6"

Private Const CLOCKS_PER_SEC As Long = 1000000

' clock_t clock (void)
' Time used by the program so far.
Private Extern clock() As Long


Public Sub Main()
 
 Dim inizio, fine, l As Long
 Dim totale As Float
  
  inizio = clock()
   
' Facciamo compiere al programma anche un semplice ciclo "For" di 1 miliardo di cicli:
  For l = 1 To 1000000000
     
  Next
   
  fine = clock()
   
' Per ottenere il numero di secondi utilizzati dalla CPU, è necessario dividere per il valore della costante "CLOCKS_PER_SEC":
  totale = CFloat((fine - inizio) / CLOCKS_PER_SEC)
   
  Print "Tempo trascorso: ";; totale
  
End



Riferimenti