Differenze tra le versioni di "Calcolare il tempo trascorso mediante le funzioni esterne del sub-sistema Timers del API di GLib"
Da Gambas-it.org - Wikipedia.
(7 versioni intermedie di uno stesso utente non sono mostrate) | |||
Riga 1: | Riga 1: | ||
Il sotto-sistema ''Timers'' della libreria '''GLib''' fornisce funzioni per tenere traccia del tempo trascorso da un momento iniziale ad uno finale stabiliti dall'utente. | Il sotto-sistema ''Timers'' della libreria '''GLib''' fornisce funzioni per tenere traccia del tempo trascorso da un momento iniziale ad uno finale stabiliti dall'utente. | ||
+ | <BR>E' possibile ottenere anche una definizione sino al "microsecondo". | ||
− | Per poter fruire delle risorse del sub-sistema ''Timers'', è necessario richiamare nell'applicazione Gambas la libreria condivisa: "''libglib-2.0.so'' " | + | Per poter fruire delle risorse del sub-sistema ''Timers'', è necessario richiamare nell'applicazione Gambas la libreria condivisa: "''libglib-2.0.so.0.8000.2'' ". |
− | |||
Mostriamo un semplice esempio in ambiente grafico: | Mostriamo un semplice esempio in ambiente grafico: | ||
Riga 8: | Riga 8: | ||
− | Library "libglib-2.0 | + | Library "libglib-2.0:0.8000.2" |
<FONT Color=gray>' ''GTimer * g_timer_new (void)'' | <FONT Color=gray>' ''GTimer * g_timer_new (void)'' | ||
Riga 27: | Riga 27: | ||
− | + | Public Sub Form_Open() | |
Button1.Text = "Avvia" | Button1.Text = "Avvia" | ||
Button2.Text = "Tempo trascorso" | Button2.Text = "Tempo trascorso" | ||
− | + | End | |
− | + | Public Sub Button1_Click() <FONT Color=gray>' ''Avvia il conteggio''</font> | |
tempus = g_timer_new() | tempus = g_timer_new() | ||
− | + | End | |
− | + | Public Sub Button2_Click() <FONT Color=gray>' ''Segna l'ultimo conteggio e calcola la differenza con quello iniziale''</font> | |
Dim ms As Long | Dim ms As Long | ||
Riga 54: | Riga 54: | ||
g_timer_destroy(tempus) | g_timer_destroy(tempus) | ||
− | + | End | |
− | |||
=Riferimenti= | =Riferimenti= | ||
− | * https:// | + | * https://docs.gtk.org/glib/func.str_has_suffix.html?q=g_timer |
Versione attuale delle 15:09, 8 giu 2024
Il sotto-sistema Timers della libreria GLib fornisce funzioni per tenere traccia del tempo trascorso da un momento iniziale ad uno finale stabiliti dall'utente.
E' possibile ottenere anche una definizione sino al "microsecondo".
Per poter fruire delle risorse del sub-sistema Timers, è necessario richiamare nell'applicazione Gambas la libreria condivisa: "libglib-2.0.so.0.8000.2 ".
Mostriamo un semplice esempio in ambiente grafico:
Private tempus As Pointer Library "libglib-2.0:0.8000.2" ' GTimer * g_timer_new (void) ' Creates a new timer, and starts timing is implicitly called. Private Extern g_timer_new() As Pointer ' void g_timer_stop (GTimer *timer) ' Marks an end time. Private Extern g_timer_stop(GTimer As Pointer) ' gdouble g_timer_elapsed (GTimer *timer, gulong *microseconds) ' Returns the number of seconds elapsed, including any fractional part. Private Extern g_timer_elapsed(GTimer As Pointer, microseconds As Pointer) As Float ' void g_timer_destroy (GTimer *timer) ' Destroys a timer, freeing associated resources. Private Extern g_timer_destroy(GTimer As Pointer) Public Sub Form_Open() Button1.Text = "Avvia" Button2.Text = "Tempo trascorso" End Public Sub Button1_Click() ' Avvia il conteggio tempus = g_timer_new() End Public Sub Button2_Click() ' Segna l'ultimo conteggio e calcola la differenza con quello iniziale Dim ms As Long g_timer_stop(tempus) Print "Tempo trascorso: "; g_timer_elapsed(tempus, VarPtr(ms)) Print "Lettura dei microsecondi: "; ms g_timer_destroy(tempus) End