Mind map
Threads
Map content
Threads
Criando Threads
- Muitas Thread usando mesmo Runnable
- start() 1 vez, mais de 1 RuntimeException
- Herdando a Classe Thread e sobrescrevendo o metodo public void run()
- Chamada ao Construtor de Thread que usa Runnble como Argumento
- thread de execução = start() criado
Estados de Threads
- alternar entre executável e execução
- não há garantia de ordem de execução de threads
- sleep = threads com execução alternada
- yield = duas threads trabalham bem juntas
- thread iniciada = estado executável
- entrar em estado de espera/bloqueado com join/wait/sleep
- estado de bloqueio = thread disponível = vai para executável
- thread inativa não inicia novamente
Sleep, Yield e Join
- nenhum bloqueio liberado quando thread em suspensão
- suspensão = tempo do argumento sleep(tempo de bloqueio)
- sleep(), static = suspende a thread que estiver sendo executada
- setPriority() = nível de prioridade entre 1(baixo) e 10(alto)
- yield = thread em execução interrompida se houver threads executáveis com a mesma prioridade
- JVM = interrompera thread de prioridade menor e executará prioridade maior
- join() = ei thread quero ser acrescentada ao seu final
Acesso Simultâneo e Threads Sincronizados
- métodos synchronized impedem mais de 1 thread acesso simultâneo
- métodos static podem ser syncronized com uso do bloqueio da instancia de java.lang.Class
- 1 thread só acessa código syncronizado
- várias acessam o código não syncrorizado
- synchronized = modificador de um método ou iniciar bloco de código
- Thread em suspensão = bloqueios indisponíveis para outras threads
Espera e Notificação
- wait/notify/notifyAll = chamadas dentro de um contexto sincronizado
- notifyAll() = avisa todas as threads
- notify() = notifica a thread que aguarda no pool
- não pode especificar qual thread será especificada
- wait() = espere-me em seu poll
Impasse(DeadLock)
- Impasse ocorre = espera de bloqueios removidos dos objetos
- Impasse é inadequado
- Quando dois bloqueios não são liberados
Information
- Description
- SCJP 7 Estudo SCJP (Threads) Mind Map on Threads, created by Cesar gomide on 10/05/2016.
- Created by
- Cesar gomide
- Views
- 2
- Rating