SamL
(usa XUbuntu)
Enviado em 17/08/2021 - 15:32h
É, isso esqueci de falar. Como a saida padrão (stdout) é apenas um, toda vez que qualquer thread imprimir algo, sairá sobrescrevendo o stdout.
O que eu sugiro e o seguinte:
-ao invés de imprimir a mensagem de alerta para cada segundo passado, você pode imprimir ela apenas uma vez.
Por exemplo:
Coloque para imprimir apenas uma vez a "sys.stdout.write("\rESTA SESSÃO SERÁ ENC...", ou seja, só imprime esta mensagem quando o count for 11 e for 0
Nesse caso, vc imprime apenas duas vezes.
Você não precisa imprimir todo tempo a mensagem, a não ser é claro, que você manipule o terminal para evitar sobrecarregar o stdout.
Por exemplo, se vc usar o "\r" no final da string de saída, ele vai imprimir na mesma linha sempre, mas ai você precisa mudar mais um pouco seu código.
É um jeito de fazer mas talvez vc não queira assim.
Não se preocupe se seu programa não funciona de maneira perfeitamente como imaginou.
Quando a gente faz software pra usuários leigos, eles querem coisas realmente impossíveis de fazer com qualquer linguagem.
Uma vez foi me pedido fazer um programa com duas entradas para serem digitadas, daí o programa devia pegar dois números de 18 digitos cada.
E ainda pediram pra criar outro número concatenando esses dois, ou seja, daria um número de 36 digitos. Disseram que tinha que ser um número e eu disse ser impossível porque 36 digitos seria acima do valor de um inteiro comum, daí tive que explicar a coisa toda até a pessoa entender que era impossível. No final, acabei transformando o número em string rsrsrs