Prévia do material em texto
1a Questão
Todos os sistemas operacionais modernos possuem o conceito de processos que, de
forma simplificada, são programas diferentes e independentes executados pelo
sistema operacional. Threading é um artifício que permite a coexistência de
múltiplas atividades dentro de um único processo. Um processo pode conter
múltiplas threads que parecem executar ao mesmo tempo e de forma assíncrona em
relação às outras threads. Mas como definir a preferencia de execução dos mesmos?
Identifique qual o método responsável por definir a prioridade e os valores possíveis.
Médodo: int getPriority(int prioridade) - Prioridade: 1 à 10
Médodo: void setPriority(int prioridade) - Prioridade: 1 à 10
Médodo: void setPriority(int prioridade) - Prioridade: 1 à 100
Médodo: void getPriority(int prioridade) - Prioridade: 1 à 10
Médodo: int setPriority(int prioridade) - Prioridade: 1 à 10
Respondido em 18/11/2019 09:58:16
Gabarito
Coment.
2a Questão
Sabe-se que a thread A escreve o numero 1 na tela (System.Out.Println("1");) e, a
thread B escreve o numero 2 na tela (System.Out.Println("2");) ambas dentro de um
for de 1 até 1000. Se a thread A for iniciada e logo em seguida for iniciada a thread
B. Pode-se afirmar que:
Serão escritos intercalados 1000 numeros "1" e 1000 numeros "2"
Serão escritos 1000 numeros "2" e depois 1000 numeros "1"
Serão escritos intercalados 1000 numeros "2" e 1000 numeros "1"
Serão escritos 1000 numeros "1" e depois 1000 numeros "2"
Nada pode ser dito quanto a ordem de impressão dos números.
Respondido em 18/11/2019 09:58:19
3a Questão
A prioridade de um thread corresponde a preferência que ela terá perante as demais
durante sua execução. Quanto maior a prioridade de um thread, maior será sua
preferência no uso da CPU. Threads de mesma prioridade costumam partilhar o
tempo de CPU igualmente. Para definir a prioridade de um thread, são usados:
números de 1 a 100, sendo que o número 50 é usado para definir a
prioridade como normal.
números de 1 a 100, sendo que o número 5 é usado para definir a prioridade
como normal.
números de 0 a 10, sendo que o número 5 é usado para definir a prioridade
como normal.
números de 1 a 5, sendo que o número 3 é usado para definir a prioridade
como normal.
números de 1 a 10, sendo que o número 5 é usado para definir a prioridade
como normal.
Respondido em 18/11/2019 09:58:22
Gabarito
Coment.
4a Questão
A execução de uma Thread pode passar por:
um estado
quatro estados
três estados
dois estados
cinco estados
Respondido em 18/11/2019 09:58:25
5a Questão
Em Java, usamos a classe Thread para criarmos linhas de execução paralelas.
Identifique quais destes métodos e descrição do que realizam estão corretos : notify()
notifica uma thread que a sua prioridade já foi alterada. wait() permite que a thread
suspenda a sua execução até que o processo se encerre e seja reiniciado novo
processo. notifyAll() notifica todas as threads que uma dada condição se alterou.
v, v, f
v, v, v
f, v, f
f, f, v
f, v, v
Respondido em 18/11/2019 09:58:27
6a Questão
A programação multitarefa é uma realidade em nossos sistemas. Isto é possível com
a implementação do conceito de Threads. Uma thread é um fluxo sequencial de
controle, ou linha de execução, dentro de um processo ou programa.
Identifique qual a opção esta incorreta em função do conceito de Threads:
Um processo pode assim ter diversas threads executando concorrentemente.,
mas todas partilhando o mesmo espaço de endereçamento.
A Máquina Virtual Java (JVM), por segurança, não permite que uma
aplicação tenha diversas linhas de execução rodando concorrentemente
Não se pode enviar a mensagem run() diretamente para um objeto Thread
Como não há necessidade de trocar de contexto, as threads representam uma
forma mais leve de processamento concorrente.
Threads com prioridades mais elevadas são executadas preferencialmente
antes de threads com menor prioridade
Respondido em 18/11/2019 09:58:30
Gabarito
Coment.
7a Questão
Dentre as alternativas abaixo, assinale a alternativa CORRETA referente à Thread:
I. Com Multiprogramação é possível alcançar paralelismo, somente em
computadores com mais de uma CPU.
II. Diferentes threads, podem parecer estar todas sendo executadas ao mesmo tempo.
III. Java threads são objetos que nunca se comunicam entre si para compartilhar
objetos em memória.
Apenas II.
Apenas I, II.
Apenas I.
Apenas II, III.
Apenas III.
Respondido em 18/11/2019 09:58:32
Gabarito
Coment.
8a Questão
A prioridade de uma thread corresponde à preferência que ela terá perante às demais
durante sua execução. Quanto maior a prioridade de uma thread, maior será sua
preferência no uso da CPU. A prioridade é extremamente ligada ao algoritmo de
escalonamento de CPU que o sistema operacional utiliza. Para definir a prioridade
de uma thread, em um programa Java, utiliza-se o método:
interrupt()
yield()
sleep()
getPriority()
setPriority()