Ainda não tem acesso? Estude com a gente! Matricule-se
Ainda não tem acesso? Estude com a gente! Matricule-se

Dúvida para execução da limpeza

Olá! Estou com as seguintes dúvidas:

  1. Quando a thread de limpeza é a última a ser executada, ela verifica que não há mais threads disponíveis e finaliza sua execução. Como posso garantir que seu próprio fluxo termine antes que a execução seja finalizada?

No meu caso, o código está igual ao do professor, mas sempre que a limpeza é chamada por último, a última mensagem que aparece antes da execução ser interrompida é "limpeza limpando o banheiro" e não "limpeza saindo do banheiro".

Nos casos em que a thread de um convidado é chamada por último, ocorre exatamente como no vídeo.

  1. Se eu quiser modificar um pouco a implementação para fazer os convidados voltarem a bater na porta após serem notificados pela limpeza, qual seria o melhor jeito de fazer?

Obrigado :')