Threads E Sockets Em Java

3036 palavras 13 páginas
Threads e Sockets em Java
MAC448 - BCC - Marcilio

Threads e Sockets em Java
Threads em Java
Programas e Processos
Um programa é um conceito estático, isto é, um programa é um arquivo em disco que contém um código executável por uma CPU. Quando este programa é executado dizemos que ele é um processo. Portanto um processo é um programa em execução, ou um conceito dinâmico. Note que um programa em execução aloca recursos, como memória, disco, impressora, isto é tudo o que precisa para ser executado. Podemos até considerar a CPU como um recurso alocado por um processo, uma vez que podem haver vários processos em execução ao mesmo tempo e só um deles está com o recurso CPU num determinado instante.
Um mesmo programa pode ser executado várias vezes simultaneamente. Assim, podemos ter um só programa e vários processos (deste programa) em execução simultaneamente. Uma outra forma de dizer é que temos várias linhas de execução deste programa.
O sistema operacional controla a execução dos vários processos:
a) dando uma fatia de tempo para cada um de acordo com algum esquema de prioridade.
b) garantindo o sincronismo entre os processos quando os mesmo precisam trocar informações.
Threads em Java
Em Java é possível lançar várias linhas de execução do mesmo programa. Chamamos a isso de
Threads ou MultiThreading. A diferença com os processos e programas acima é que o Java é interpretado. Quem cuida dos vários Threads de um programa é o próprio interpretador Java.
Algumas vantagens em relação aos processos:
a) O chaveamento entre os threads é mais rápido que o chaveamento entre processos
b) A troca de mensagens entre os threads também é mais eficiente.
Claro que essa maior eficiência ocorre porque o interpretador tem o controle maior sobre os threads. No entanto existe a ineficiência do interpretador que é grande.
Vejamos primeiramente um exemplo de execução seqüencial.
No exemplo abaixo o método f() da classe TesteA é chamado sequencialmente 5 vezes. A cada chamada espera-se

Relacionados

  • Comunicação Distribuída
    1866 palavras | 8 páginas
  • Eng. 3310
    855 palavras | 4 páginas
  • Comunicação entre processos
    4028 palavras | 17 páginas
  • Comunicação entre processos
    2697 palavras | 11 páginas
  • Sistemas Distribuidos
    1248 palavras | 5 páginas
  • Rmi em sistemas
    2834 palavras | 12 páginas
  • Comunicador Interno
    4322 palavras | 18 páginas
  • JavaSlides 2012
    18632 palavras | 75 páginas
  • Desenvolvimento de uma ferramenta para comunicação em rede
    4376 palavras | 18 páginas
  • Artigo Chat
    1502 palavras | 7 páginas