Sto provando a mettere un limite di tempo sull'input dell'utente, quindi se impiegano più di 2 secondi per inserire il testo in un input, il programma terminerà. Mi stavo chiedendo se c'è un modo semplice per farlo in linguaggio C?
Sto provando a mettere un limite di tempo sull'input dell'utente, quindi se impiegano più di 2 secondi per inserire il testo in un input, il programma terminerà. Mi stavo chiedendo se c'è un modo semplice per farlo in linguaggio C?
Un modo semplice per farlo sarebbe quello di generare un thread che creerà un timer per due secondi e terminerà il programma se non ha ricevuto input. Crea il thread prima della tua chiamata di blocco, imposta una sorta di flag sull'input e leggi il flag nel tuo gestore di timeout. Nota che dovrai rendere questo thread sicuro.
Puoi semplicemente usare alarm () prima di chiamare la funzione di input e scrivere un gestore di segnale per SIGALRM e terinare il tuo programma nel gestore del segnale.
Leggi altre domande sui tag c user-interface