Escolar Documentos
Profissional Documentos
Cultura Documentos
Comunicações
.
Programação III
Discentes:
Turma: I2 3
2
Ano: 2º
1
Índice
Objectivos.....................................................................................................1
Introducao.....................................................................................................1
Sockets..........................................................................................................2
ServerSocket.................................................................................................3
Threads..........................................................................................................3
Objectivos
Desenvolver um chat que envia e recebe mensagens pela
mesma rede;
Entender os conceitos de Sockets e Threads
Introducao
1
Sockets
2
ServerSocket
O método de aceitação espera até que um cliente seja inicializado e
solicite uma conexão no host e na porta deste servidor.
A classe ServerSocket é usada para fornecer implementação
independente do sistema do lado do servidor de uma conexão de Socket
cliente / servidor. O construtor para ServerSocket lança uma exceção se
não puder escutar na porta especificada (por exemplo, a porta já está
sendo usada).
É amplamente utilizado para as aplicações da classe
java.net.ServerSocket que é a seguinte:
1. No canal java.nio, a classe ServerSocket é usada para recuperar
um serverSocket associado a este canal.
2. Em java.rmi.Server, a classe ServerSocket é usada para criar um
soquete de servidor na porta especificada (a porta 0 indica uma
porta anônima).
3. Em javax.net, o soquete do servidor é amplamente usado para:
retornar um soquete de servidor não acoplado.
retornar um soquete de servidor vinculado à porta
especificada.
retorna um soquete de servidor vinculado à porta
especificada e usa a lista de pendências de conexão
especificada.
retornar um soquete de servidor vinculado à porta
especificada, com uma lista de espera de escuta
especificada e IP local.
3
Threads
Thread é um termo recorrente nas fichas técnicas de processadores e virou
até nome de chip, com o AMD Threadripper. Entender esse conceito é
importante na hora de comprar uma nova CPU, já que pode indicar se um
modelo vale ou não a pena para o tipo de uso desejado. Thread, em inglês,
significa "fio" ou "linha", e no contexto dos microprocessadores representa uma
ordem de execução, com instruções encadeadas que são desempenhadas uma por
vez.
Thread, representa uma instância da CPU da máquina virtual Java, e
que tem associada um trecho de código que será executado, e uma área de
memória. Podemos criar uma Thread em Java de duas maneiras:
Estendendo o comportamento da classe Thread. Implementando a interface
Runnable.
Em Java, usamos a classe Thread do pacote java. lang para criarmos
linhas de execução paralelas. A classe Thread recebe como argumento um
objeto com o código que desejamos rodar.
Threads em Java podem ser criadas das seguintes maneiras: Fazendo
“extend” da classe Thread. Implementando a interface Runnable. thread.
Implementação de threads
1. Frequentemente, você precisa implementar seus próprios threads.
4
2. Isso é feito dentro do método run() do thread que especifica o
comportamento do thread.
3. A class Thread implementa um thread que não faz nada (run() está
vazio)
4. Discutimos duas formas de especificar o que fazer no método run()
5
Conclusão
6
Bibliografia
https://link.springer.com/chapter/10.1007/978-1-4020-7870-5_68
devmedia.com.br/como-criar-um-chat-multithread-com-socket-em-java/33639
https://edisciplinas.usp.br/pluginfile.php/3441398/mod_resource/content/1/Threads.pdf
https://www.caelum.com.br/apostila-java-orientacao-objetos/apendice-programacao-
concorrente-e-threads
https://www.techtudo.com.br/noticias/2019/01/o-que-sao-threads-e-para-que-servem-
em-um-processador.ghtml
https://www.geeksforgeeks.org/java-net-serversocket-class-in-java/
https://www.baeldung.com/a-guide-to-java-sockets
https://docs.oracle.com/javase/7/docs/api/java/net/ServerSocket.html