Wie Threadpool Threads wiederverwendet und wie es funktioniert

Meine Multithreading-Konzepte sind schwach und versuchen zu lernen.

In Java, was ich weiß, können wir einen Thread nicht mehr als einmal aufrufen, d. H

Thread t = new Thread(//Some Runnable);
t.start()

t.start() //Illegal and throw Exception at Runtime.

Soweit ich weiß, wird beim erneuten Aufrufen von t.start () eine Ausnahme ausgelöst, da der zugehörige Stapel für den Thread zerstört wird, sobald er verlassen wirdrun() Methode und Sie versuchen, die Dinge erneut zu initialisieren.

In diesem Fall ist das, was ich über Threadpool weiß, eine bessere Leistung und Zeitersparnis, da kein neuer Thread erstellt werden muss. (Ich lese inhttp://www.javatpoint.com/thread-pooling-in-java)

Wenn im ThreadPool-Szenario kein neuer Thread erstellt werden muss, wie funktioniert es dann mit demselben Thread, der gerade seine Ausführungsmethode beendet hat? Kann dieser Thread dann wieder verwendet werden?

Ich lese das,http://docs.oracle.com/javase/tutorial/essential/concurrency/pools.html und es heißt, dass "Die meisten Executor-Implementierungen in java.util.concurrent verwenden Thread-Pools, die aus Arbeitsthreads bestehen. Diese Art von Thread existiert getrennt von den ausführbaren und aufrufbaren Tasks, die er ausführt, und wird häufig zum Ausführen mehrerer Tasks verwendet."

Was ist Worker-Thread hier? Ist es etwas anderes als normale Java-Threads?

mit diesem linkWie kann ein zwischengespeicherter Thread-Pool vorhandene Threads wiederverwenden? Ich habe etwas, bin aber immer noch verwirrt, welche Art von Dingen beseitigt werden können, wenn wir den Thread-Pool verwenden, und was eine bessere Leistung als normaler Java-Thread bietet.

Also können wir so sagen,

Der Faden besteht aus drei Teilen.

Erstellung (OS mitteilen, dass es sich um einen neuen Thread handelt, Stapel dafür erstellen.)Führen Sie die Methode Runnable, dh run () aus.Threads zerstören.

In Anbetracht der obigen 3 Schritte können mit Threadpool Schritt 1 und Schritt 3 nach einer festgelegten Anzahl von Thread-Erstellungen entfernt werden. Es wird nur Schritt 2 für jede Aufgabe ausgeführt. Ist Threadpool deshalb schneller? können wir so sagen hab ich recht?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage