INEP, ENADE
questão 16 de 19, número 30 na prova
É comum a expressão "servidor web" ser utilizada para denominar processos cuja finalidade é disponibilizar recursos estáticos, que são os que se encontram completos antes de uma requisição ser realizada, e recursos dinâmicos, que são produzidos no momento em que um cliente o requisita e seu conteúdo é definido em tempo de requisição. Um Container de Servlets é um servidor web capaz de gerenciar diferentes aplicações que disponibilizam conteúdo dinâmico, e um Servlet é uma classe Java capaz de gerar conteúdo desse tipo, mediante a requisição de um cliente. Cada requisição atendida por um Servlet pode ser executada por uma thread e múltiplas requisições podem estar em execução simultaneamente. Considere o Servlet a seguir que mantém uma variável cuja finalidade é controlar quantas requisições são atendidas ao longo do tempo.
1 @WebServlet ("/")
2 public class ContaRequisicoes extends HttpServlet { 3 private int contador;
4 protected void doGet (HttpServletRequest req, HttpServletResponse resp) throws Exception { 5 contador = contador + 1; 6 } 7 }
Disponível em: Acesso em: 24 jun. 2019 (adaptado).
A respeito do Servlet apresentado, avalie as afirmações a seguir.
- I. O código apresenta uma condição de corrida.
- II. Substituir a linha 5 pela construção synchronized (this) {contador = contador + 1;} garante o correto funcionamento do método.
- III. Obter a trava do objeto referenciado por antes de executar o incremento e liberá-la request logo a seguir, garante o correto funcionamento do método.
É correto o que se afirma em
Questões parecidas
Ver todas desta matériaAinda não há outras questões de Engenharia de Computação em outras provas do acervo.