Aula em Laboratório - 1

Elabore um relatório com:
    Componentes do grupo - até 2 pessoas
    Soluções encontradas:
       1) a resposta à pergunta feita no exercício 1
       2) as classes que formam a resposta do exercício 2
       3) a tabela proposta no exercício 3
       4) as respostas do exercício 4
AO FINAL DA AULA este relatório deve ser enviado por e-mail ao
endereço fldotti@inf.pucrs.br
 

Exercício 1
    Declare um objeto runnable cujo método run fica em loop eterno.
    Neste loop ele dorme (sleep) por um segundo e imprime uma mensagem.
    No código principal:
             Crie uma thread a partir de uma instância deste objeto runnable.
             Inicie a thread (start).
    O que acontece código principal se não houverem mais comandos depois do start ?

Exercício 2
    A partir da resposta do exercício 1, modifique para fazer com que o código principal
    espere o final da thread criada.  Modifique a thread para nao ficar em loop eterno, mas
    um número finito de vezes.

Exercício 3
    Construa um programa com duas threads em loop eterno, onde cada thread incrementa um contador interno.
    O programa principal, depois de iniciar as duas threads fica em loop, fazendo sleep de 1
    segundo e mostrando o valor das variáveis das threads.
    Execute várias vezes o programa, atribuindo valores de prioridades diferentes às threads.
    Verifique o resultado obtido e se as prioridades influem no resultado.
    Monte uma tabela do tipo:
        prioridade thread 1        prioridade thread 2     valor cont 1(em 10 seg)    valor cont 2(em 10 seg)
                    5                                    5
                    4                                    6
                    3                                    7
                    2                                    8
                    1                                    10

Exercício 4
    Vá até esta página, na seção 2.1 você encontrará um programa com 2 threads que manipulam um contador.
    1) Analise o programa e diga qual comportamento você espera do mesmo.
    2) Em um ambiente de programação, compile o programa ali encontrado.
    3) Repita várias vezes a execução do mesmo.  Analise as respostas obtidas.
    4) O programa roda sempre da mesma maneira ?
        Explique o que faz com que o programa se comporte desta maneira.