El ejemplo de este artículo indica el uso de la interfaz del ejecutor en Java. Compártelo para todos para su referencia. Los detalles son los siguientes:
1. Definición de interfaz del ejecutor en Java
Ejecutor de interfaz pública {Void Execute (Runnable Commit);}
2. Cree un grupo de hilos mediante métodos de fábrica estática a continuación.
a) NewFixedThreadPool: cree un grupo de hilos largo. Después de alcanzar el número máximo de hilos, el número de hilos ya no aumenta.
Si un hilo termina debido a una excepción no esperada, el grupo de subprocesos complementará un nuevo hilo.
b) NewCachedhreadpool: cree una piscina de hilos en caché. Cuando la longitud de la piscina excede los requisitos de procesamiento, puede recuperar los hilos inactivos.
c) NewsingLethreadPool: cree un solo ejecutor de retraso.
d) Newscheduledhreadpool: cree un grupo de hilos a largo plazo y admite la ejecución de tareas periódicas y periodic.
Similar al temporizador. Sin embargo, el temporizador se basa en el tiempo absoluto, que es sensible a los cambios en el reloj del sistema, mientras que ProchuledThreadPoolExecutor solo admite el tiempo relativo.
3. Compare el resumen de la aplicación de la clase de temporizador
1) El temporizador es el único hilo para realizar todas las tareas del temporizador. Si una tarea está fuera de tiempo, hará que otro tiempo de TimerTask hará que los problemas con precisión.
2) Si Timrtask arroja anormalidades desmarcadas, el temporizador tendrá un comportamiento impredecible. Por lo tanto, ProchuledHreadPoolExecutor puede reemplazar completamente el temporizador.
3) Para resolver el ciclo de vida de los servicios de ejecución, la interfaz EjecutorService expande el ejecutor. La piscina de hilo incluirá 3 estados: correr, apagar, terminar.
4. Callable y Future
Debido a que Runnable no devuelve el valor y no puede ser expulsado de la anormalidad verificada, Callable es una mejor abstracción. (Callable <Void> Indica la tarea de no retorno de valor).
Future describe el ciclo de vida de la tarea y proporciona métodos relacionados para obtener los resultados de la tarea, cancelar la tarea, verificar la tarea para completarla o cancelarla.
5.
Su toma y encuesta puede bloquear la finalización de la tarea.
Se espera que este artículo sea útil para el diseño del programa Java de todos.