maulattu
08-04-2009, 13:39
Ciao gente!
Ho un'applicazione multithread, molti dei quali sono thread di servizio che, in caso di servizio momentaneamente disabilitato, fanno degli sleep anche abbastanza lunghi (es 30s) con sleep.
La questione è: è possibile far "abortire" la sleep lanciando un segnale a tale thread?.
es: faccio un sleep(30), ma dopo 2 sec dal lancio di usleep in uno specifico thread, dal main si scatena una condizione di uscita. La questione è che se faccio una pthread_join, devo aspettare 28 sec per la terminazione del thread (finisce il periodo di sleep, il thread si riattiva, vede la condizione di uscita e termina con la classica pthread_exit)
Suggerimenti? :help:
Grazie!!! :D
Ho un'applicazione multithread, molti dei quali sono thread di servizio che, in caso di servizio momentaneamente disabilitato, fanno degli sleep anche abbastanza lunghi (es 30s) con sleep.
La questione è: è possibile far "abortire" la sleep lanciando un segnale a tale thread?.
es: faccio un sleep(30), ma dopo 2 sec dal lancio di usleep in uno specifico thread, dal main si scatena una condizione di uscita. La questione è che se faccio una pthread_join, devo aspettare 28 sec per la terminazione del thread (finisce il periodo di sleep, il thread si riattiva, vede la condizione di uscita e termina con la classica pthread_exit)
Suggerimenti? :help:
Grazie!!! :D