Carregando...
Carregando...
Ajude a melhorar a plataforma
O termo “programação de soquete” refere-se a escrever programas executados em vários computadores, nos quais os dispositivos estão todos conectados mutualmente usando uma rede. Existem dois protocolos de comunicação que podemos usar para programação de soquete: User Datagram Protocol (UDP) e Transfer Control Protocol (TCP). No contexto de Sockets, avalie as afirmativas a seguir. I. As classes Socket e ServerSocket são usadas para programação de Socket não orientada à conexão, e as classes DatagramSocket e DatagramPacket são usadas para programação de Socket com conexão. II. O servidor constrói um objeto ServerSocket para especificar o número da porta na qual a comunicação ocorrerá. Métodos de tratamento de exceção são usados sempre que ocorre um erro de E/S. III. Se a conexão for bem-sucedida, o cliente e o servidor poderão se comunicar usando fluxos de entrada/saída. As classes de soquete do cliente e do servidor são responsáveis pelos fluxos de E/S. IV. Objetivando um melhor desempenho em todo processo, o Socket java precisa rodar assincronamente, ou seja, independentemente de protocolo, não aguardará resposta do servidor para a mensagem. Está correto o que se afirma em:
Explique melhor esta questão
Abre o Tutor com o enunciado e as alternativas já no campo — você revisa e envia.
Esta questão foi verificada por um de nossos administradores.
JUSTIFICATIVA A afirmativa I está incorreta, pois, pelo contrário, as classes Socket e ServerSocket são usadas para programação de Socket orientada a conexão (TCP), e as classes DatagramSocket e DatagramPacket são usadas para programação de Socket sem conexão (UDP). É importante lembrar que Socket com conexão, caracterizado pelo TCP, indica que um circuito é estabelecido, e a mensagem é apenas enviada caso o receptor responda um “ok”. O UDP, ao contrário, enviará os pacotes, efetivada ou não a sua entrega ao destinatário. A afirmativa II está correta, pois o objeto ServerSocket é usado para fornecer implementação, independentemente do sistema do lado do servidor de uma conexão de soquete cliente/servidor. A afirmativa III está correta, pois, após o estabelecimento da conexão, o cliente-servidor passa a se comunicar efetivamente, e os soquetes são responsáveis pelo fluxo entre os dois agentes. A afirmação IV está incorreta, uma vez que o Socket java precisa rodar de forma síncrona no caso apresentado, pois deverá aguardar resposta do servidor para a mensagem trocada. O servidor constrói um objeto ServerSocket para especificar o número da porta na qual a comunicação ocorrerá. Métodos de tratamento de exceção são usados sempre que ocorre um erro de E/S.