Buscar

Em Java, a maioria das aplicações usam multithread para atingir o paralelismo, pois como veremos mais adiante na disciplina, threads são mais leves...

Em Java, a maioria das aplicações usam multithread para atingir o paralelismo, pois como veremos mais adiante na disciplina, threads são mais leves e possuem um desempenho melhor. Entretanto, vamos agora aprender um pouco sobre processos. A ideia é que o aluno tente fazer cada um dos exercícios sem a ajuda do professor. Ele pode consultar os colegas, a documentação oficial do Java, o chatGPT, enfim, qualquer recurso que desejar. Nesta aula de laboratório, você terá uma introdução as classes ProcessBuilder e Process em Java. Elas são usadas para executar comandos e programas no sistema operacional Linux a partir do seu programa Java. Ao longo da aula, você enfrentará 7 exercícios progressivamente mais desafiadores para aprofundar seu conhecimento sobre processos usando Java. A classe Process é mais simples e limitada, geralmente usada para iniciar o processo, esperar que outro processo termine e assim por diante. A classe ProcessBuilder permite mais configurações, definindo qual comando será executado, qual diretório, redirecionamento de E/S e assim por diante. Em cada exercício, lembre-se de abrir o terminal, compilar os arquivos criados e depois executar o programa principal. Exercício 1: Executando um Comando Simples Crie um programa Java que utilize a classe ProcessBuilder para executar o comando "ls" e imprima o resultado no console. Neste exercício, a ideia é criar um objeto ProcessBuilder para configurar o processo, redirecionando a E/S para a mesma do processo pai e depois um objeto Process para iniciá-lo. Então, o processo pai aguarda o processo filho encerrar e após isso imprime o código de saída do processo. Esse é um exemplo de situação em que o processo pai cria um processo filho e fica esperando ele encerrar, para então continuar com suas ações. Alguns métodos que você pode usar: start() para iniciar o processo filho, inheritIO() para redirecionar a E/S do processo filho para a mesma do processo pai, waitFor() para o processo pai esperar o processo filho terminar. Lembre-se de usar try/catch para IOException e InterruptedException.

A classe ProcessBuilder é mais limitada que a classe Process.
A classe ProcessBuilder permite mais configurações que a classe Process.
A classe Process é mais leve que a classe ProcessBuilder.
A classe Process é mais utilizada para redirecionamento de E/S.

Essa pergunta também está no material:

aula_lab1
5 pág.

Fundamentos de Sistemas Operacionais Universidade Federal do Espírito SantoUniversidade Federal do Espírito Santo

💡 1 Resposta

User badge image

Ed Verified user icon

A alternativa correta é: "A classe ProcessBuilder permite mais configurações que a classe Process."

0
Dislike0

✏️ Responder

SetasNegritoItálicoSublinhadoTachadoCitaçãoCódigoLista numeradaLista com marcadoresSubscritoSobrescritoDiminuir recuoAumentar recuoCor da fonteCor de fundoAlinhamentoLimparInserir linkImagemFórmula

Para escrever sua resposta aqui, entre ou crie uma conta

User badge image

Outros materiais