Pessoal,
Primeiro vou explicar o que estou implementando e depois expor minha dúvida, se alguém puder me esclarecer, desde já agradeço.
Bem, eu estou implementando um time out na minha aplicação. Primeiro eu pensei em implementar da maneira como acontece na internet, então eu fiz da seguinte forma: eu registro o tempo do último comando que o usuário executou, e no comando seguinte, eu verifico quanto tempo decorreu do comando anterior.
Ex: Usuario estava executando a aplicação e deixou ela parada por cinco minutos, aí ele voltou.. Quando o usuário tentar executar um novo comando, a aplicação é encerrada (pois excedeu o tempo).
Dessa forma seria semelhante ao browser, que só dá time out quando eu mando uma nova requisição para o servidor. Mas pensando no ambiente da tv, não seria algo legal, uma vez que um único aparelho é usado por várias pessoas. O ideal seria que a aplicação por si, decorrido certo tempo após o último comando, se encerrasse e a tv voltasse à sua programação normal. Concordam comigo?
Entao pensando numa maneira de fazer isso, pensei em uma thread. E colocaria uma thread para rodar e quando ela contasse determinado tempo, ela encerraria a aplicação. Sendo que a cada novo comando do usuário esse tempo seria reiniciado.
Minha dúvida é se seria possível fazer isso usando coroutine ou alguma outra forma. Pelo que consegui absorver até agora lendo sobre coroutine, observei que ela pode ser suspensa e retomada de onde parrou, mas não é um processo paralelo. Estou correto?
Autor: Luis Antonio Tavares