Red de conocimiento informático - Aprendizaje de programación - ¿Cómo determina el grupo de subprocesos de Java cuándo finaliza una tarea antes de ejecutar el subproceso principal?

¿Cómo determina el grupo de subprocesos de Java cuándo finaliza una tarea antes de ejecutar el subproceso principal?

Llame a

shutdown

primero y luego llame a

isTerminate

Ejemplo:

/*

* Use el grupo de subprocesos para abrir múltiples subprocesos, y el subproceso principal espera a que todos los subprocesos terminen de ejecutarse

*/

public static void moreThread() {

prueba {

int threadNum = 0

for (int i = 0; i lt; 10; i) {

> threadNum;

final int currentThreadNum = threadNum;

exe.execute(new Runnable() {

@Override

public void run() {

intentar {

System.out.println("Subthread [" currentThreadNum "] open"); 10);

} catch (InterruptedException e) {

e.printStackTrace(

}finalmente{

System.out; .println("Fin del hilo secundario [ " currentThreadNum "]");

}

}

});

} println ("Se han abierto todos los subprocesos");

exe.shutdown()

System.out.println("shutdown(); Inicie el apagado de la secuencia y ejecute la tarea enviada anteriormente, pero no acepta nuevas tareas

while(true){

if(exe.isTerminate()){

System.out.println. ("¡Todos los subprocesos están terminados!");

break

}

Thread.sleep(1000);

}

} catch (InterruptedException e) {

e.printStackTrace()

} finalmente{

System.out.println(" Fin del hilo principal");

}

}