Pause()
Da Gambas-it.org - Wikipedia.
Versione del 13 set 2014 alle 18:30 di Vuott (Discussione | contributi)
La funzione della libreria di C
int pause(void);
pone in attesa il processo del programma fino a quando non sarà ricevuto un segnale.
Volendola utilizzare in Gambas, bisognerà dichiararla con Extern, nonché dichiarare la libreria di C: libc.so.6, nella quale la funzione è contenuta:
Private Extern pause() As Integer In "libc:6"
Semplice esempio di uso in Gambas congiuntamente con le funzioni signal() e alarm():
Library "libc:6" Private Const SIGALRM As Integer = 14 Private Extern alarm(secondi As Integer) As Integer Private Extern signal(signum As Integer, sighandler As Pointer) ' void pause(void) Private Extern pause() As Integer Public Sub Main() ' Gestione del segnale SIGALRM: signal(SIGALRM, post_alarm) ' Attivazione del segnale di allarme dopo 3 secondi: alarm(3) Print "Dopo 'alarm()' e prima di 'pause()" ' Resta in pausa, finche' il processo riceve il segnale SIGALRM: pause() Print "Dopo 'pause()'" End Private Function post_alarm(segno As Integer) Print "Segnale SIGALRM giunto: funzione attivata." End