Logo Passei Direto
Buscar

Teste de Conhecimento 8

Conjunto de questões sobre threads em Java: prioridades (valores e métodos set/get), estados de execução, wait/notify/notifyAll, comportamento concorrente (exemplo de impressões de 1 e 2) e conceitos de multithreading e multiprogramação.

Ferramentas de estudo

Questões resolvidas

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.

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 5, sendo que o número 3 é 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 100, sendo que o número 50 é 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.

A execução de uma Thread pode passar por:
cinco estados
três estados
dois estados
quatro estados
um estado

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, v
f, v, f
v, v, f
f, f, v
f, v, v

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:
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.
Um processo pode assim ter diversas threads executando concorrentemente., mas todas partilhando o mesmo espaço de endereçamento.
Threads com prioridades mais elevadas são executadas preferencialmente antes de threads com menor prioridade

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 I, II.
Apenas III.
Apenas II, III.
Apenas I.
Apenas II.

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:
sleep()
setPriority()
interrupt()
yield()
getPriority()

Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Questões resolvidas

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.

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 5, sendo que o número 3 é 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 100, sendo que o número 50 é 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.

A execução de uma Thread pode passar por:
cinco estados
três estados
dois estados
quatro estados
um estado

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, v
f, v, f
v, v, f
f, f, v
f, v, v

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:
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.
Um processo pode assim ter diversas threads executando concorrentemente., mas todas partilhando o mesmo espaço de endereçamento.
Threads com prioridades mais elevadas são executadas preferencialmente antes de threads com menor prioridade

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 I, II.
Apenas III.
Apenas II, III.
Apenas I.
Apenas II.

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:
sleep()
setPriority()
interrupt()
yield()
getPriority()

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()

Mais conteúdos dessa disciplina