O exemplo deste artigo resume o método de uso de threads centrais do Java. Compartilhe para todos para sua referência. A análise específica é a seguinte:
1. O thread é a unidade de agendamento básico. Os recursos do processo compartilhado, como memória e alças de arquivo. Mas com seu próprio PC (contador de programas), pilha (pilha de threads) e variáveis locais
2. As vantagens do tópico:
a) Faça pleno uso de vários processadores
b) pode simplificar o modelo. Tarefas específicas são dadas a encadeamentos específicos. Como servlets e rmi e outras estruturas.
c) tratamento simples de eventos assíncronos. Como o soquete, o NIO é mais complicado. O sistema operacional atual suporta um número maior de threads.
d) melhor resposta da interface
3. Bloqueio interno: bloco sincronizado. Mútuo. Reunar), esse design pode evitar bloqueios mortos
4. Visibilidade da memória: devido à otimização do compilador, o thread não é o mesmo que você vê.
Classe pública Novibility {Private Static Boolean Ready; principal (string [] args) {new readrthread ().
Pode imprimir 0 ou continuar circulando. Porque é classificado
5.
6. Escape: Não transborde do ponteiro no construtor. Não transborde das variáveis internas, como:
classe teste {private string [] list = new String [] {};
7. Threads fechados: fechar o objeto em um tópico, seja o objeto seguro ou não, pode garantir que o thread esteja seguro
a) Limite de Statck. Ou seja, apenas variáveis locais podem acessar o objeto.
b) Threadlocal.
8. Objetos inalterados. Deve ser seguro. Objetos insatisfatórios devem ser satisfeitos:
a) O estado não pode ser modificado após a criação.
b) Portanto, o domínio está cheio
c) Crie o objeto corretamente, sem o transbordamento deste ponteiro
9. Publique com segurança
a) Objeto de inicialização através da estática
b) Use volátil ou atômica
c) O domínio final do objeto criado corretamente é armazenado em
d) Use bloqueios
Espera -se que este artigo seja útil para o design do programa Java de todos.