Assinale a alternativa que apresenta um mecanismo de concorr...
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Alternativa correta: C - Multithreading
O tema da questão aborda os mecanismos de concorrência disponíveis na linguagem de programação Java. A concorrência é um conceito fundamental na programação moderna, especialmente para o aproveitamento eficiente de múltiplos processadores e núcleos de CPU, assim como para criar aplicações que podem realizar múltiplas operações ao mesmo tempo, aumentando a eficiência e a responsividade.
Na alternativa C - Multithreading, é destacado o mecanismo correto de concorrência oferecido pela linguagem Java. O termo multithreading refere-se à capacidade de um programa criar e gerenciar múltiplas threads, ou fluxos de controle, simultaneamente. Cada thread pode executar partes diferentes do código em paralelo com outras threads, o que permite que múltiplas operações ocorram ao mesmo tempo. Isso é essencial em aplicações que precisam lidar com várias tarefas ao mesmo tempo, como servidores web, aplicações interativas e sistemas operacionais.
Java suporta multithreading através do seu modelo de threads integrado na própria linguagem e na API padrão. A linguagem permite a criação de threads tanto pela implementação da interface Runnable
quanto pela extensão da classe Thread
. Java fornece várias funcionalidades para gerenciar o ciclo de vida das threads, sincronizar o acesso aos recursos compartilhados e facilitar a comunicação entre threads.
As demais opções como Virtuals, Concurrent, Parathreading e Paralels não são termos que representam mecanismos de concorrência explicitamente suportados pela linguagem Java. Além disso, alguns desses termos não são conceitos reconhecidos no contexto de concorrência ou são termos genéricos que não especificam funcionalidades concretas da linguagem.
Logo, a compreensão do mecanismo de multithreading em Java é crucial para entender como a linguagem lida com a concorrência e para responder corretamente à questão.
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
Multithreading: Várias threads de execução. Cada thread tem: pilha de chamadas de métodos e contador de programa;
.
.
.
At.te
Foco na missão ❢
Complementando a resposta da colega Lopes, observem que a questão citou mecanismo de concorrência suportado explicitamente...,
Este explicitamente deve-se a classe java.lang.Thread, pois se não há utilizamos explicitamente, não poderemos fazer uso da concorrência em Java.
Fonte, em inglês: https://docs.oracle.com/javase/7/docs/api/java/lang/Thread.html
Multithreading
- É a capacidade que os programas Java têm de executarem múltiplas threads;
- Cada thread tem sua própria pilha de chamadas de método e contador de programa, permitindo que ele execute concorrentemente com outras threads.
- Multithreading melhora o desempenho em sistemas de um único processador;
- Em um aplicativo com múltiplas threads, as threads podem ser distribuídas por múltiplos processadores, de modo que diversas tarefas sejam executadas concorrentemente.
Alternativa: C
c-
A Java program runs in its own process and by default in one thread. Java supports threads as part of the Java language via the Thread code. The Java application can create new threads via this class.
Java 1.5 also provides improved support for concurrency with the java.util.concurrent package.
Java provides locks to protect certain parts of the code to be executed by several threads at the same time. The simplest way of locking a certain method or Java class is to define the method or class with the synchronized keyword.
https://www.vogella.com/tutorials/JavaConcurrency/article.html
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo