Alarm ()
Da Gambas-it.org - Wikipedia.
Versione del 7 feb 2015 alle 09:44 di Vuott (Discussione | contributi) (Creata pagina con 'La funzione della libreria di C unsigned int alarm(unsigned int seconds); imposta un allarme a tempo per l'invio di un segnale ''SIGALRM'' entro tot secondi. Se il parametro ...')
La funzione della libreria di C
unsigned int alarm(unsigned int seconds);
imposta un allarme a tempo per l'invio di un segnale SIGALRM entro tot secondi. Se il parametro della funzione è uguale a zero, non viene attivato nessun allarme e viene disabilitato l'eventuale allarme impostato precedentemente. La funzione alarm() ritorna il numero di secondi che mancano all'invio del segnale SIGALRM.
Volendola utilizzare in Gambas, bisognerà dichiararla con Extern, nonché dichiarare la libreria di C: libc.so.6, nella quale la funzione è contenuta:
Private Extern alarm(secondi As Integer) As Integer In "libc:6"
Semplice esempio di uso in Gambas congiuntamente con la funzione signal():
Library "libc:6" Private Const SIGALRM As Integer = 14 ' unsigned int alarm(unsigned int seconds) Private Extern alarm(secondi As Integer) As Integer Private Extern signal(signum As Integer, sighandler As Pointer) Public Sub Form_Open() ' Gestione del segnale SIGALRM: signal(SIGALRM, post_alarm) ' Attivazione del segnale di allarme dopo 3 secondi: alarm(3) End Private Function post_alarm(segno As Integer) ' (funzione Callback) Print "\nRicevuto il segnale "; segno; " - Termine del programma" Me.Close End
Vedi anche la pagina relativa alla funzione signal()