Analise as afirmativas correlatas e a relação proposta entre...
I. “O método invokeLater recebe como seu argumento um objeto que implementa a interface Runnable.”
PORQUE
II. “Ele coloca essa interface como uma propriedade na fila da thread de despacho de ações.”
Assinale a alternativa correta.
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Alternativa correta: B - A primeira afirmativa é verdadeira; a segunda é falsa.
Este tema da questão envolve conhecimentos sobre programação concorrente em Java, especificamente sobre o funcionamento da Event Dispatch Thread (EDT), que é a thread responsável pela gestão dos eventos de interface de usuário no Swing, uma biblioteca gráfica para Java. Ao entender o conceito de EDT, é possível compreender o papel que o método invokeLater desempenha na criação de interfaces gráficas mais responsivas e seguras em termos de thread.
O método invokeLater é utilizado para garantir que uma determinada ação seja executada na EDT. Ele faz isso ao enfileirar um objeto que implementa a interface Runnable. Portanto, a primeira afirmativa é verdadeira pois o invokeLater realmente recebe um objeto Runnable como argumento.
Em relação à segunda afirmativa, enquanto o método invokeLater realmente agenda a execução do objeto Runnable na fila de eventos da EDT, ele não "coloca essa interface como uma propriedade". Não há propriedade envolvida; o método apenas adiciona o objeto Runnable à fila de eventos para ser processado pela EDT. Portanto, a segunda afirmativa é falsa pois a formulação sugere uma operação de atribuição de propriedade, o que não corresponde à real funcionalidade do método.
Compreender que a interface Runnable é apenas um contrato para definir uma tarefa a ser executada e que o método invokeLater é um meio de solicitar que essa tarefa seja executada na EDT é essencial para resolver essa questão corretamente e entender como gerenciar a execução de código em ambientes gráficos em Java.
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo