1. Há uma parte integrante da linha?
- CPU fatia de tempo: tempo de execução O sistema operacional aloca para cada thread
- Dados Operacionais: espaço de pilha: tópicos de armazenamento objeto a ser usado por vários threads podem compartilhar objetos no heap.
- espaço de pilha: loja de rosca variáveis locais a ser utilizado, cada segmento tem uma pilha separada.
- Fio de código de lógica
2. Passe criado de duas formas são? (Exemplo de código)
public class TestCreateThread{
public static void main(String [] args){
MyThread t1 = new MyThread();
t1.start();
}
}
class MyThread extends Thread{
public void run(){
for(int i = 1;i<=50;i++){
System.out.println("MyThread:"+i);
}
}
}
// criar uma maneira fio 2
public class TestCreateThread{
public static void main(String[] args){
MyRunnable mr = new MyRunnale();
Thread t2 = new Thread(mr);
t2.start();
}
}
class MyRunnable implements Runnable{
public void run(){
for(int i = 1; i<-50;i++){
System.out.println("MyRunnale:"+i);
}
}
}
}
3. Passe que estado?
- O estado inicial
- pronto
- estado de funcionamento
- estado rescisão
- O que é thread-safe?
Quando vários threads simultaneamente acessar recursos críticos de tempo, se a destruição de operações atômicas pode resultar em dados inconsistentes.
recursos críticos:
recursos partilhados (o mesmo objeto), permitir que apenas um segmento de usar, garantia disponível a sua precisão.
operações atômicas: uma integral várias etapas, consideradas como um todo, ea ordem não pode ser interrompido ou etapa padrão.
5. Descrição do papel do bloco de código de sincronização?
É um códigos parciais (atómica) método de bloqueio.