Ed
há 10 meses
Para resolver a questão sobre a execução simultânea do método M por diferentes threads em um sistema Java, precisamos considerar como o Java lida com a concorrência. A opção que permite que um método seja executado por apenas uma thread de cada vez é a utilização da palavra-chave `synchronized`. Quando um método é declarado como `synchronized`, ele garante que apenas uma thread pode executá-lo por vez, bloqueando as outras threads até que a execução do método seja concluída. Vamos analisar as alternativas: a) Ajustar o firewall de borda para permitir uma conexão por IP. - Isso não resolve o problema de concorrência entre threads. b) Implementar connection pooling no acesso ao banco de dados. - Isso melhora a eficiência do acesso ao banco, mas não resolve a questão da execução simultânea do método. c) Utilizar a keyword lockable no bloco de M. - Não existe uma keyword `lockable` em Java. d) Declarar o método M como synchronized. - Esta é a solução correta, pois garante que apenas uma thread execute o método por vez. e) Reescrever M em Assembly, necessariamente. - Isso não é uma solução viável e não resolve o problema de concorrência em Java. Portanto, a alternativa correta é: d) Declarar o método M como synchronized.
Libere respostas sem pagar
Ajude estudantes
Ed
há 2 anos
Para que o método M seja executado, em dado momento, somente por uma thread, a opção correta é declarar o método M como synchronized. Isso garante que apenas uma thread por vez possa acessar e executar o método, evitando possíveis erros nos dados consultados.
Mais perguntas desse material