Prévia do material em texto
Aluno: Matr.: Disc.: PROG. ORIENT. PROJ. 2023. EAD (G) / EX 1. Qual a palavra chave utilizada pelo Java para informar que um determinado bloco deve estar síncrono com os demais threads? setsynchronized synchronized notifyall notify synchrono 2. Baseando-se nos conceitos de thread produtor/consumidor sem sincronização, o que é uma condição de corrida? É uma situação em que 2 ou mais threads ou processos estão compartilhando dados (no momento da gravaçao) e o resultado final depende do tempo do escalonamento dos threads. É uma situação em que apenas 2 threads ou processos estão compartilhando dados (lendo ou gravando) e o resultado final depende do tempo do escalonamento dos threads. É uma situação em que 2 ou mais threads ou processos estão compartilhando dados (no momento da leitura) e o resultado final depende do tempo do escalonamento dos threads. É uma situação em que 2 ou mais threads ou processos estão compartilhando dados (lendo ou gravando) e o resultado final é independente do tempo do escalonamento dos threads. É uma situação em que 2 ou mais threads ou processos estão compartilhando dados (lendo ou gravando) e o resultado final depende do tempo do escalonamento dos threads. 3. Durante a execução de threads, há casos em que elas trabalham independentemente uma da outra, sem necessidade de qualquer comunicação entre elas. Threads que trabalham independentes no tempo são chamadas de: Assíncronas Bloqueadas Executáveis Síncronas Encerradas 4. 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 é: notifyAll() start() wait() stop() notify() 5. Qual a palavra reservada do Java voltada para a sincronização de threads? static implements volatile final synchronized 6. Segundo o que foi apresentado na aula, qual é a motivação para a programação concorrente? Aumentar a segurança na execução de threads. Diminuir o compartilhamento de memória, estabilizando os threads. Fazer com que os programas sejam mais seguros. Diminuir o timeout dos threads nos sistemas. Tornar os programas mais rápidos, acompanhando a evolução do hardware e dos sistemas.