Diferenças entre edições de "Java/Thread"

382 bytes adicionados ,  12h30min de 28 de julho de 2016
 
==Criando threads==
Para criar sua própria ''thread'' por meio da classe <code>Thread</code>, é preciso realizar 3 etapas: Definir o código a ser executado pela ''thread'', referenciar esse código em uma instância de <code>Thread</code> e chamar o método <code>void start()</code> dessa classe.
#Definir o código a ser executado pela ''thread'';
#Referenciar esse código em uma instância de <code>Thread</code> e;
#Chamar o método <code>void start()</code> dessa classe.
 
===Definindo o código===
Já que <code>Runnable</code> é uma interface funcional, é possível reescrever o código acima da seguinte forma.
 
<source lang="Java" highlight="1,4"inline>
Runnable runnable = () -> System.out.println(Thread.currentThread());
</source>
 
Uma vez que a classe <code>Thread</code> implementa <code>Runnable</code>, alternativamente é possível estender <code>Thread</code> e inserir o código em uma sobreescrita do método <void>void run()</code>.
<source lang="Java" highlight="1,4">
class LinhaDeExecucao extends Thread {
 
@Override
public void run() {
System.out.println(Thread.currentThread());
}
}
</source>
 
 
===Instanciando a classe Thread===
Thread thread = new Thread(runnable);
}
}
</source>
thread.start();
}
}
</source>
Thread[Thread-0,5,main]
 
 
<code>String name</code> especifica um nome para a ''thread''. Caso não especificado no construtor o nome da ''thread'' será criado automaticamente derivado do modelo '''Thread-0''', onde '''0''' é um número incrementado a cada nova '''thread''' criada sem definição de nome.