Thread et Executor sont incommensurables. Thread est la structure de base appartenant à Java, qui représente le thread réel du programme, et sa méthode run est le processus d'exécution du thread. Executor est encapsulé sur Thread et introduit les concepts de pool de threads et de réutilisation de threads pour améliorer l'efficacité opérationnelle et économiser les ressources. Executor contrôle le fonctionnement continu du fil. En termes simples, il y a une boucle infinie Thread dans la méthode run de while(true) {}, donc le Executor détenu par Thread continuera à fonctionner et ne s'arrêtera pas. . Vous devez utiliser La méthode shutdown permet à Executor de dire à son subordonné Thread de sortir de la boucle et d'arrêter le thread. Bien sûr, Thread n'a pas de méthodes similaires à shutdown De nombreux programmes nécessitent que les threads continuent de s'exécuter et auront des boucles à ce stade, lors de l'héritage et de l'encapsulation de Thread, vous devez implémenter vous-même la méthode de sortie du thread.
Concernant le problème du retour de Javamain en void, je ne pense pas qu'il y ait quelque chose de particulièrement facile à expliquer. Le C en main est relativement ancien à cette époque, les programmes sont encore. il fallait s'appuyer sur la valeur de retour pour indiquer à l'utilisateur Cela dépend si le programme fonctionne normalement et Java dispose d'un mécanisme d'exception sonore, et le programme ne contrôle pas directement la console, donc même s'il y a une valeur de retour, cela doit être fait par Java Runtime, pas par le Java programme.
Thread
etExecutor
sont incommensurables.Thread
est la structure de base appartenant àJava
, qui représente le thread réel du programme, et sa méthoderun
est le processus d'exécution du thread.Executor
est encapsulé surThread
et introduit les concepts de pool de threads et de réutilisation de threads pour améliorer l'efficacité opérationnelle et économiser les ressources.Executor
contrôle le fonctionnement continu du fil. En termes simples, il y a une boucle infinieThread
dans la méthoderun
dewhile(true) {}
, donc leExecutor
détenu parThread
continuera à fonctionner et ne s'arrêtera pas. . Vous devez utiliser La méthodeshutdown
permet àExecutor
de dire à son subordonnéThread
de sortir de la boucle et d'arrêter le thread. Bien sûr,Thread
n'a pas de méthodes similaires àshutdown
De nombreux programmes nécessitent que les threads continuent de s'exécuter et auront des boucles à ce stade, lors de l'héritage et de l'encapsulation deThread
, vous devez implémenter vous-même la méthode de sortie du thread.Concernant le problème du retour de
Java
main
envoid
, je ne pense pas qu'il y ait quelque chose de particulièrement facile à expliquer. LeC
enmain
est relativement ancien à cette époque, les programmes sont encore. il fallait s'appuyer sur la valeur de retour pour indiquer à l'utilisateur Cela dépend si le programme fonctionne normalement etJava
dispose d'un mécanisme d'exception sonore, et le programme ne contrôle pas directement la console, donc même s'il y a une valeur de retour, cela doit être fait parJava Runtime
, pas par leJava
programme.