Android Desenvolvimento Android: use pool de threads do Executor em vez de AsyncTask para operação assíncrona

Como o Android oficialmente não recomenda mais o uso de AsyncTask para operações assíncronas, este artigo apresenta como usar o pool de threads Executor em vez de AsyncTask para operações assíncronas e fornece uma classe de pacote completa para simular AsyncTask e fornecer uso consistente com AsyncTask.

Este artigo contém o seguinte:

  • Breve introdução do Executor
  • inicializar instância
  • iniciar e executar
  • Callbacks no thread de interface do usuário
  • parar
  • pacote simples
  • Simular o encapsulamento de AsyncTask

1. Breve introdução ao uso do Executor

Executor também é mais conveniente de usar, contando principalmente com as duas classes a seguir:

java.util.concurrent.ExecutorService;
java.util.concurrent.Executors;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;

Dois, instância de inicialização

Inicializar uma instância de ExecutorService também é simples:

ExecutorService executorService = Executors.newFixedThreadPool(1);

Usamos newFixedThreadPool(int) para criar um pool de threads com apenas 1 thread.

Em relação ao pool de threads de Executors, existem alguns outros tipos opcionais:

SingleThreadExecutor(): pool de encadeamento de encadeamento único;

Agendar

Guess you like

Origin blog.csdn.net/freezingxu/article/details/125141651