Baixe o app para aproveitar ainda mais
Prévia do material em texto
1 - Um programador precisa conhecer como a estrutura Swing trabalha com Threads. Quanto as tipos de Threads, o que são Thread Inicial, Thread de tratamento de evento e Thread de trabalho - worker? Gabarito: Thread Inicial: executa o código inicial da aplicaçãoThread de tratamento de evento:interações com componentes Swing devem ser feitos através deste Thread.Thread de trabalho - worker:processamento. 2 - Explique o ciclo de vida de uma Thread. Gabarito: Ao ser criado uma nova Thread chamamos o método start() fazerndo com que esta entre no estado PRONTA. Fica a encargo do gerenciador de threads o momento no qual método run da thread será executado. Quando executado o método run(), esta passa para o estado de EXECUTANDO. Uma thread em execução pode voltar ao estado "prse o seu tempo de CPU expirar ou se Uma thread pode entrar no estado " BLOQUEADA "(inativa), por várias motivos Entre eles podemos destacar como exemplo quando ela, ou quaisquer outras threads, chamam os métodos join(), lock(). Também pode estar bloqueada aguardando alguma operação de entrada/saída (I/O) ser finalizada. Quando a situação que colocou a thread como bloqueada for revertida ou seu tempo de sleep expirar, ela será reativada e entrará no esta Quando todas as instruções contidas no método run() da thread forem concluídas, a thread terá terminado sua tarefa e será finalizada. 3 - Em relação ao uso de threads na linguagem Java, identifique a opção O método yield é utilizado para forçar um thread a entrar no modo de suspensão. Uma classe pode definir tanto métodos, quanto variáveis sincronizadas. Métodos static não podem ser synchronized. Todo thread recebe uma prioridade padrão que é igual ao menor nível de prioridade possível. Para configurar essa prioridade, pode O método join é utilizado para garantir que determinado thread não seja executado até que outro tenha entrado no estado inativo. 4 - Dado o código abaixo, o que será exibido: public class MinhaOutraThread extends Thread {private int tick = 1; private int num; public MinhaOutraThread(int num) {this.num = num; Um programador precisa conhecer como a estrutura Swing trabalha com Threads. Quanto as tipos de Threads, o que são Thread Inicial, Thread de tratamento de evento e Thread de executa o código inicial da aplicação Thread de tratamento de evento: onde todo o tratamento de eventos é feito. A maioria das componentes Swing devem ser feitos através deste Thread. worker: processos executados em segundo plano, que consomem Explique o ciclo de vida de uma Thread. Ao ser criado uma nova Thread chamamos o método start() fazerndo com que esta entre no estado PRONTA. Fica a encargo do gerenciador de threads o momento no qual método run da thread será executado. Quando executado o método run(), esta passa para o estado de EXECUTANDO. Uma thread em execução pode voltar ao estado "prse o seu tempo de CPU expirar ou seu método yield() for chamado. Uma thread pode entrar no estado " BLOQUEADA "(inativa), por várias motivos Entre eles podemos destacar como exemplo quando ela, ou quaisquer outras threads, chamam os métodos join(), sleep(), wait() or lock(). Também pode estar bloqueada aguardando alguma operação de entrada/saída (I/O) ser finalizada. Quando a situação que colocou a thread como bloqueada for revertida ou seu tempo de sleep expirar, ela será reativada e entrará no estado "pronta". Quando todas as instruções contidas no método run() da thread forem concluídas, a thread terá terminado sua tarefa e será finalizada. Em relação ao uso de threads na linguagem Java, identifique a opção correta. O método yield é utilizado para forçar um thread a entrar no modo de suspensão.se pode definir tanto métodos, quanto variáveis sincronizadas. Métodos static não podem ser synchronized. Todo thread recebe uma prioridade padrão que é igual ao menor nível de prioridade possível. configurar essa prioridade, pode ser utilizado o método setPriority. O método join é utilizado para garantir que determinado thread não seja executado até que entrado no estado inativo. Dado o código abaixo, o que será exibido: public class MinhaOutraThread extends Thread { MinhaOutraThread(int num) { Um programador precisa conhecer como a estrutura Swing trabalha com Threads. Quanto as tipos de Threads, o que são Thread Inicial, Thread de tratamento de evento e Thread de onde todo o tratamento de eventos é feito. A maioria das tados em segundo plano, que consomem Ao ser criado uma nova Thread chamamos o método start() fazerndo com que esta entre no estado PRONTA. Fica a encargo do gerenciador de threads o momento no qual método run da thread será executado. Quando executado o método run(), esta passa para o estado de EXECUTANDO. Uma thread em execução pode voltar ao estado "pronta" u método yield() for chamado. Uma thread pode entrar no estado " BLOQUEADA "(inativa), por várias motivos Entre eles podemos destacar como exemplo quando ela, ou sleep(), wait() or lock(). Também pode estar bloqueada aguardando alguma operação de entrada/saída (I/O) ser finalizada. Quando a situação que colocou a thread como bloqueada for revertida ou seu tempo de sleep expirar, ela Quando todas as instruções contidas no método run() da thread forem concluídas, a thread terá terminado sua tarefa e será finalizada. . O método yield é utilizado para forçar um thread a entrar no modo de suspensão. Todo thread recebe uma prioridade padrão que é igual ao menor nível de prioridade possível. O método join é utilizado para garantir que determinado thread não seja executado até que } public void run() { while (tick < 200000) { tick++; if ((tick % 50000) == 0) System.out.println("Thread #" + num + ", tick = " + tick);} } } public class Principal { private final static int AUX = 2; public static void main(String[] args) {MinhaOutraThread[] runners = new MinhaOutraThread[AUX];for (int i = 0; i < AUX; i++) { runners[i] = new MinhaOutraThread(i);runners[i].setPriority(2); } for (int i = 0; i < AUX; i++) runners[i].start(); } } 0,50000 - 0,100000 - 0,150000 1,350000 - 0,300000 - 1,150000 0,350000 - 0,300000 - 0,150000 0,50000 - 1,100000 - 2,150000 1,50000 - 1,100000 - 1,150000 6 - A execução de uma Thread pode passar por: dois estados três estados quatro estados um estado cinco estados 7 - Dentre as alternativas abaixo, assinale a Todo thread recebe o menor nível de prioridade possível por padrão. Sempre o método yield é utilizado para forçar um thread terminar. O método join espera pelo fim da execuçãode outra thread Um Thread só pode ser criado extendendo Métodos static não podem ser synchronized. 8 - Os componentes GUI Swing podem fazer uso de Threads. Identifique com verdadeiro ou falso as alternativas abaixo: ( ) Todas as interações com componentes Swing devem ser executadas a partir de, no máximo, 10 Threads de cada vez ( ) invokeLater() solicita que algum código seja executado na Thread de despacho de evento. Este método retorna imediatamente a execução do System.out.println("Thread #" + num + ", tick = " + tick); tatic void main(String[] args) { MinhaOutraThread[] runners = new MinhaOutraThread[AUX]; runners[i] = new MinhaOutraThread(i); 0,150000 - 0,200000 - 1,50000 - 1,100000 - 1,150000 - 1,2000001,150000 - 0,250000 - 1,200000 - 0,150000 - 1,100000 - 0,500000,150000 - 0,250000 - 1,200000 - 1,150000 - 1,100000 - 1,500002,150000 - 3,200000 - 4,50000 - 5,100000 - 6,150000 - 7,2000001,150000 - 0,200000 - 0,50000 - 0,100000 - 0,150000 - 0,200000 A execução de uma Thread pode passar por: Dentre as alternativas abaixo, assinale a alternativa CORRETA referente à Thread: Todo thread recebe o menor nível de prioridade possível por padrão. Sempre o método yield é utilizado para forçar um thread terminar. O método join espera pelo fim da execuçãode outra thread ead só pode ser criado extendendo-sea classe Thread. Métodos static não podem ser synchronized. Os componentes GUI Swing podem fazer uso de Threads. Identifique com verdadeiro ou falso as alternativas abaixo: ) Todas as interações com componentes Swing devem ser executadas a partir de, no máximo, 10 Threads de cada vez solicita que algum código seja executado na Thread de despacho de evento. Este método retorna imediatamente a execução do 1,200000 0,50000 1,50000 7,200000 0,200000 alternativa CORRETA referente à Thread: Os componentes GUI Swing podem fazer uso de Threads. Identifique ) Todas as interações com componentes Swing devem ser executadas solicita que algum código seja executado na Thread de despacho de evento. Este método retorna imediatamente a execução do 9 - Dentre as alternativas abaixo, assinaI - wait() - Utilizado para sincronizar acesso a um objeto. Coloca a thread corrente em estado de interrompível. II - notify() Notifica todas as threads que estejam esperando em um lockIII - isInterrupted() - Verifica se foi atribuído à thread o estado de interrompível. Apenas I, II. Apenas II. Apenas II, III. Apenas I. Apenas III. 10 - Dentre as alternativas abaixo, assinale as Thread: espera velho novo executavel Resiliente 11 - Analisando as seguintes definições:I. Objeto que existe depois que o processo ou o thread que o criou deixa de existir.II. Mecanismo pelo qual elementos mais específicos incorporam a estrutura e o comportamento de elementosmais gerais. III. Lista de valores nomeados, utilizada como faixa de um determinado tipo de - Escolha a alternativa que a denominação corresponde ao conceito. objeto ativo, polimorfismo e multiplicidade. objeto transiente, método e cardinalidade. objeto persistente, herança e enumeração. objeto ativo, mensagem e objeto transiente, polimorfismo e multiplicidade. código, sem que seja necessário esperar. ( ) invokeAndWait(): Atua muito semelhante ao invokeLater(), exceto pelo fato de esperar pela execução do código. f, v, f f, v, v v, f, v v, v, f v, v, v Dentre as alternativas abaixo, assinale a alternativa FALSA referente à Thread:Utilizado para sincronizar acesso a um objeto. Coloca a thread corrente em estado notify() Notifica todas as threads que estejam esperando em um lock ifica se foi atribuído à thread o estado de interrompível. Dentre as alternativas abaixo, assinale as CORRETAS referente aos estados de uma Analisando as seguintes definições: is que o processo ou o thread que o criou deixa de existir.II. Mecanismo pelo qual elementos mais específicos incorporam a estrutura e o comportamento de elementos III. Lista de valores nomeados, utilizada como faixa de um determinado tipo de Escolha a alternativa que a denominação corresponde ao conceito. objeto ativo, polimorfismo e multiplicidade. objeto transiente, método e cardinalidade. objeto persistente, herança e enumeração. objeto ativo, mensagem e enumeração. objeto transiente, polimorfismo e multiplicidade. código, sem que seja necessário esperar. ) invokeAndWait(): Atua muito semelhante ao invokeLater(), exceto la execução do código. referente à Thread: Utilizado para sincronizar acesso a um objeto. Coloca a thread corrente em estado ifica se foi atribuído à thread o estado de interrompível. referente aos estados de uma is que o processo ou o thread que o criou deixa de existir. II. Mecanismo pelo qual elementos mais específicos incorporam a estrutura e o III. Lista de valores nomeados, utilizada como faixa de um determinado tipo de atributo. ) invokeAndWait(): Atua muito semelhante ao invokeLater(), exceto 12 - Em Java, usamos a classe Thread para criarmos linhas de execução paralelas. Identifialternativas abaixo: a. Runnable é o estado em que o thread está rodando. b. Dead é o estado onde uma thread pode morrer de "causas naturais" (quando o seu método run()acaba normalmente) ou pode ser morto (pelo método stop()). c. Not Runnable é o estado em que o thread está impedido de executar por alguma razão. Somente a opção b é falsa Todas as alternativas são verdadeiras Todas as alternativas são falsas As opções a e b são falsas Somente a opção a é falsa - Na sincronização de Threads, alguns métodos são muito importantes. O método que é responsável pela liberação de uma ou mais Threads é: start() stop() notify() wait() notifyAll() - A interface MouseListener disponibiliza 14 métodos de tratamento para os diferentes comportamentos possíveis para as funções do mouse. Com relação ao mouseEntered(MouseEvent e) sel Invocado quando o botão do mouse é pressionado e em seguida movimentado com o componente; Invocado quando o mouse se movimento e seu botão principal é apertado. Invocado quando o mouse entra na região gráfica do comp Invocado quando o mouse se moveu para região gráfica do componente sem nenhum botão apertado; Invocado quando o mouse sai da região gráfica do componente; Em Java, usamos a classe Thread para criarmos linhas de execução paralelas. Identifique com verdadeiro ou falso as Runnable é o estado em que o thread está rodando. onde uma thread pode morrer de "causas naturais" (quando o seu método run()acaba normalmente) ou pode Not Runnable é o estado em que o thread está impedido de executar por alguma razão. Todas as alternativas são verdadeiras Na sincronização de Threads, alguns métodos são muito importantes. O método que é responsável pela liberação de uma ou A interface MouseListener disponibiliza 14 métodos de tratamento para os diferentes comportamentos possíveis para as funções do mouse. Com relação ao mouseEntered(MouseEvent e) selecione a opção correta: Invocado quando o botão do mouse é pressionado e em seguida movimentado com o componente; Invocado quando o mouse se movimento e seu botão principal é apertado. Invocado quando o mouse entra na região gráfica do componente Invocado quando o mouse se moveu para região gráfica do componente sem nenhum botão apertado; Invocado quando o mouse sai da região gráfica do componente; que com verdadeiro ou falso as onde uma thread pode morrer de "causas naturais" (quando o seu método run()acaba normalmente) ou pode Na sincronização de Threads, alguns métodos são muito importantes. O método que é responsável pela liberação de uma ou A interface MouseListener disponibiliza 14 métodos de tratamento para os diferentes comportamentos possíveis para as Invocado quando o botão do mouse é pressionado e em seguida movimentado com o componente; Invocado quando o mouse se moveu para região gráfica do componente sem nenhum botão apertado;
Compartilhar