TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

Introdução aos tópicos

Relatório de pesquisa: Introdução aos tópicos. Pesquise 862.000+ trabalhos acadêmicos

Por:   •  14/10/2014  •  Relatório de pesquisa  •  819 Palavras (4 Páginas)  •  203 Visualizações

Página 1 de 4

Resumo

Introdução a Threads

O processo de threads é permitir a coexistência de múltiplas atividades dentro de um único processo. Portanto Java é uma linguagem que inclui explicitamente o conceito de threads na linguagem. Podem ser descritos também como “processos leves” (lightweight processes), pois, da mesma forma que processos, threads são independentes, possuem sua própria pilha de execução, seu próprio program counter e suas próprias variáveis locais. Porém, threads de um mesmo processo compartilham memória, descrito de arquivos (files handles) e outros atributos que são específicos daquele processo. Um processo pode conter múltiplas threads que parecem executar ao mesmo tempos de forma assíncrona em relação as outras threads. Todos os threads de um mesmo processo compartilham o mesmo espaço de endereçamento de memória, o que significa que elas têm acesso as mesmas variáveis e objetos, e que eles podem alocar novos objetos de um mesmo heap.

Multithreading

Todo programa em Java possui pelo menos uma threads ou seja a thread main, porém Além dessa, a máquina virtual mantém algumas outras que realizam tarefas como coleta de lixo ou finalização de objetos. Algumas classes disponíveis na API de Java também utilizam threads em suas implementações. Como exemplo, podemos citar as classes de Java Swing ou as classes da implementação de RMI.

Estados de uma thread; Criada, execução, suspensa ou morta. Há duas formas equivalentes de criarmos uma thread em Java. Ou criamos um objeto que estende a classe Thread e sobrescrevemos o seu método public void run() ou implementamos a interface Runnable que ´e definida como: package java.lang;

Public interface Runnable {

public abstract void run(); }

O exemplo abaixo da utilização de threads utilizando as duas formas.

public class Exemplo extends Thread {

// classe interna que estende thread (a classe é definida como static apenas para podermos alocar uma instância no main) static class Atividade1 extends Thread { método que sobrescreve o método run() herdado public void run() { for(int i=0; i<1000; i++) {

System.out.println("Usando Herança");

} } }

2-- // classe interna que implementa a interface Runnable

static class Atividade-2 implements Runnable {

public void run() {

for(int i=0; i<1000; i++) {

System.out.println("Usando Runnable");

} } }

public static void main(String[] args) {

3 - // basta criarmos uma instância da classe que estende Thread

Thread

...

Baixar como (para membros premium)  txt (3.6 Kb)  
Continuar por mais 3 páginas »
Disponível apenas no TrabalhosGratuitos.com