parisisalvo
14-10-2005, 16:58
Salve, vorrei realizzare un thread di uscita per il mio software...
in modo tale che alla pressione del tasto ESC, vengano chiusi tutti i thread che l'applicativo lancia.
Il software è composto da 4 thread, sono tutti thread ciclici, e per ora girano sotto la condizione
// codice dentro i thread, sono 4 distinti
while(1) {
...
...
}
la mia idea per ammazzarli, era di :
* definire una variabile uscita, e inizializzarla a zero : USCITA=0;
* fare ciclare i thread secondo questa condizione
while(!USCITA){
...
...
}
e quindi di creare un thread parallelo, che alla pressione del tasto ESC, ponga la variabile uscita =1 e poi "badaban" tutti i thread alla valutazione della condizione finiscono di clicare ed escono.
Domande
1) c'e' una funzione (tipo nel pascal keypressed() ) che si aggorga delle pressione di un tasto? c'e' un'altra funzione che legga il tasto premuto? (tipo in pascal readkey)
2) c'e' un modo piu' elegante per ammazzare i thread?
Grazie
CIAO
in modo tale che alla pressione del tasto ESC, vengano chiusi tutti i thread che l'applicativo lancia.
Il software è composto da 4 thread, sono tutti thread ciclici, e per ora girano sotto la condizione
// codice dentro i thread, sono 4 distinti
while(1) {
...
...
}
la mia idea per ammazzarli, era di :
* definire una variabile uscita, e inizializzarla a zero : USCITA=0;
* fare ciclare i thread secondo questa condizione
while(!USCITA){
...
...
}
e quindi di creare un thread parallelo, che alla pressione del tasto ESC, ponga la variabile uscita =1 e poi "badaban" tutti i thread alla valutazione della condizione finiscono di clicare ed escono.
Domande
1) c'e' una funzione (tipo nel pascal keypressed() ) che si aggorga delle pressione di un tasto? c'e' un'altra funzione che legga il tasto premuto? (tipo in pascal readkey)
2) c'e' un modo piu' elegante per ammazzare i thread?
Grazie
CIAO