Uma das características da linguagem Java é a possibilidade de implementar programas...
Responda: Uma das características da linguagem Java é a possibilidade de implementar programas com múltiplas linhas de execução (multithreaded execution). Nesse contexto, é fornecido o programa em Java ab...
💬 Comentários
Confira os comentários sobre esta questão.

Por Rodrigo Ferreira em 31/12/1969 21:00:00
Gabarito: b) XYZ
O programa em questão utiliza threads em Java, onde a classe Thread1 estende Thread e a classe Thread2 implementa Runnable. No método main, são criadas instâncias dessas threads e chamadas suas execuções.
A thread Thread1, ao ser iniciada, imprime 'X' e 'Y' com um sleep entre eles, enquanto a Thread2 imprime 'Z' e 'W' também com um sleep.
Porém, a execução das threads é concorrente, e a ordem de saída pode variar. A questão pede uma possibilidade de saída, ou seja, uma sequência que pode ocorrer.
Analisando as opções, a saída 'XYZ' é possível, pois a Thread1 pode imprimir 'X' e 'Y' e a Thread2 pode imprimir 'Z' logo após, antes de imprimir 'W'.
As outras opções apresentam sequências que não são possíveis pela ordem de execução e sincronização do programa, como 'ZWYZ' ou 'ZXY', que não respeitam a ordem dos prints dentro das threads.
Portanto, a saída 'XYZ' é uma possibilidade real, confirmando o gabarito oficial.
O programa em questão utiliza threads em Java, onde a classe Thread1 estende Thread e a classe Thread2 implementa Runnable. No método main, são criadas instâncias dessas threads e chamadas suas execuções.
A thread Thread1, ao ser iniciada, imprime 'X' e 'Y' com um sleep entre eles, enquanto a Thread2 imprime 'Z' e 'W' também com um sleep.
Porém, a execução das threads é concorrente, e a ordem de saída pode variar. A questão pede uma possibilidade de saída, ou seja, uma sequência que pode ocorrer.
Analisando as opções, a saída 'XYZ' é possível, pois a Thread1 pode imprimir 'X' e 'Y' e a Thread2 pode imprimir 'Z' logo após, antes de imprimir 'W'.
As outras opções apresentam sequências que não são possíveis pela ordem de execução e sincronização do programa, como 'ZWYZ' ou 'ZXY', que não respeitam a ordem dos prints dentro das threads.
Portanto, a saída 'XYZ' é uma possibilidade real, confirmando o gabarito oficial.
⚠️ Clique para ver os comentários
Visualize os comentários desta questão clicando no botão abaixo
Ver comentários