Come leggere l'input dell'utente e allo stesso tempo eseguire comandi periodici

-1

Come faccio a richiedere l'input dell'utente, mentre allo stesso tempo eseguo i timer, per eseguire periodicamente funzioni automatiche.

Pseudo-codice per illustrare :

while true 
{
    if input() OR timer(10)
    {
        if input() != Nill
        { 
            execute input.value
        }
        else 
        {
            execute automatic/periodic functions
        }
    }
}

Quindi, in pratica, esegue le funzioni ogni 10 secondi, ma dà la possibilità di inserire comandi allo stesso tempo, senza interrompere il timer. Dovrei usare il threading per bloccare i processi mentre i comandi utente sono in esecuzione, quindi non ottengo errori dai processi automatici che interrompono le esecuzioni.

    
posta Ciarán J. Hagen 13.12.2018 - 12:18
fonte

1 risposta

0

Utilizzare più thread che vengono eseguiti contemporaneamente o utilizzare un ciclo di eventi. In un ciclo di eventi, sia l'input dell'utente che il timer sarebbero un evento. Quando viene attivato, il tuo codice viene eseguito. Il modulo asyncio di Python fornisce un ciclo di eventi nella libreria standard.

    
risposta data 13.12.2018 - 12:28
fonte

Leggi altre domande sui tag