Varios métodos para implementar subprocesos múltiples de Java
(1) Heredar la clase de subproceso y sobrecargar la función en ejecución
Crear:
clase xx extiende el subproceso{
public void run(){
Thread.sleep(1000) // El hilo duerme durante 1000 milisegundos. Dormir hará que el hilo entre en un estado bloqueado y libere recursos
}}
Iniciar el hilo:
object.start() // Iniciar el hilo y ejecutar la función
(2) Implementar la interfaz Runnable y reescribir la función en ejecución
Iniciar hilo:
Hilo t = new Thread(object) //Crear un objeto de hilo
t.start()
(3) Implemente la interfaz Callable y repita Escriba una función de llamada
Callable es una interfaz similar a Runnable. La clase que implementa la interfaz Callable y la implementación de Runnable son tareas que puede realizar. otros hilos.
Existen algunas diferencias entre Callable y Runnable:
① El método especificado por Callable es call(), mientras que el método especificado por Runnable es run().
② Las tareas invocables pueden devolver valores después de la ejecución, pero las tareas ejecutables no pueden devolver valores
③ El método call() puede generar excepciones, pero el método run() no lanzar excepciones.
④ Al ejecutar la tarea invocable se obtendrá un objeto futuro, que representa el resultado del cálculo asincrónico. Proporciona métodos para comprobar si el cálculo está completo, esperar
a que se complete y recuperar los resultados del cálculo. Los objetos futuros le permiten ver la ejecución de una tarea, cancelar una tarea y recuperar los resultados de una tarea
.