Removendo stop_all to while da implementação da barreira dentro do observer e removendo includes desnecessários. Será que o código de libertação das threads no final do observer é mesmo necessário?