PCO 5 Gerenciamento E Sincronizacao 1

3728 palavras 15 páginas
Programação com Threads

Threads Java como um
Estudo de Caso

Estados de uma Thread Java

• O diagrama seguinte mostra os estados nos quais uma thread Java pode estar e alguns métodos que podem ser usados para mudar de um estado para outro.

Ciclo de Vida de Java Threads
NEW

TIMEWAITING

READY

FINISHED
WAITING
RUNNING

BLOCKED

DEAD

Nova Thread - NEW
• Inicialização da thread –

• Feita através do construtor Thread(). class MyThreadClass extends Thread{ ...

}
...
MyThreadClass myThread = new MyThreadClass();

NEW  RUNNABLE (Executável)
• Neste estado de NEW (Nova), nenhum recurso do sistema foi alocado para a thread, ainda.
• Assim, a partir daqui, tudo que você pode fazer é um start()para ativar a thread, e a thread passa a um estado RUNNANLE (estado Ready), ou um stop(), para "matá-lo".
• A chamada de qualquer outro método não faz sentido e levantará a exceção
IllegalThreadStateException.

Estado de RUNNABLE (Pronto)
• Quando uma thread entra pela primeira vez no estado RUNNABLE a partir do estado “NEW”, ela vai para o estado de “Ready”, que a JVM não vê.
• Este é o estado em que o thread está pronta para rodar, mas não tem os recursos do SO para ser executada.
• O método start()requisita os recursos do SO, necessários para rodar a thread e chama o seu método run().

• O método run() é a "alma" de uma thread. É neste método que definimos o que o thread vai executar.
• Thread myThread = new MyThreadClass(); myThread.start(); Estado Ready
• Falamos em “Ready“ (Pronto), porque a thread pode não estar realmente sendo executada no estado de Ready
(Pronto).
• Imagine um computador com um único processador - seria impossível executar todos as threads “prontas" ao mesmo tempo. • O que ocorre é que o processador deve ser escalonada entre as vários threads.

Estado Running (Executando)
• Quando o Scheduler escalona uma thread para o processador, esta passa ao estado de
“Running”.

• Quando uma thread está em “Running”
(Executando), as instruções do seu método

Relacionados

  • Bacharel em Ciências Contábeis
    14909 palavras | 60 páginas
  • Trabalho
    7824 palavras | 32 páginas
  • Administração financeira
    11984 palavras | 48 páginas
  • Senhor
    7515 palavras | 31 páginas
  • Fontes de financiamento
    19989 palavras | 80 páginas
  • Analise
    14357 palavras | 58 páginas
  • PIM 3 FINAL
    22308 palavras | 90 páginas
  • Gestão capital de giro marcenaria
    51157 palavras | 205 páginas
  • ABREVIATURAS
    60615 palavras | 243 páginas