1. Linha novas desvantagens como se segue:
. Uma diferença entre cada novo segmento Novas propriedades de objectos.
b. Passe a falta de uma gestão unificada, ilimitada possível novo segmento, competir uns com os outros, e pode levar até muitos recursos do sistema levar a falhas.
c. a falta de recursos adicionais, tais como execução programada, a execução periódica, o fio é interrompido.
2. Executores vantagens:
fios A reutilização existentes, reduzindo a criação do objeto, o desaparecimento do custo, bom desempenho.
b. podem efectivamente controlar o número máximo de segmentos simultâneos, melhorar a utilização dos recursos do sistema, evitando a competição excessiva de recursos, para evitar o entupimento.
c. Fornecer uma temporização executado para executar, o controlo normal de segmento único, concorrente.
(1). NewCachedThreadPool
criar um pool de threads em cache, se o pool de threads é mais longo do que as necessidades de processamento, flexibilidade recuperado thread inactivo, se não for recuperado, o novo segmento. O seguinte código de exemplo:
ExecutorService cachedThreadPool Executors.newCachedThreadPool = ();
cachedThreadPool.execute (o Runnable novo new () {
@Override
public void run () {
System.out.println (index);
}
});
pool de threads é infinito, quando a segunda tarefa é executada primeira tarefa foi concluída, o fio utilizado para realizar a primeira tarefa será complexa, ao invés de cada vez que um novo segmento.
(2). NewFixedThreadPool
criar um pool de threads de tamanho fixo, você pode controlar o número máximo de threads simultâneos, tópicos em excesso vai esperar na fila.
ExecutorService fixedThreadPool = Executors.newFixedThreadPool (3);
(3) newScheduledThreadPool
criar um pool de threads de tamanho fixo para apoiar a execução da tarefa regular e periódica. execução atrasou o seguinte código de exemplo:
O ScheduledExecutorService scheduledThread