Der direkte Aufruf der run()-Methode eines Thread-Objekts startet keinen separaten Thread und kann innerhalb des aktuellen Threads ausgeführt werden. Um Runnable.run von einem separaten Thread aus auszuführen, führen Sie einen der folgenden Schritte aus:
public class ThreadRunMethodTest { public static void main(String args[]) { MyThread runnable = new MyThread(); runnable.run(); // Call to run() method does not start a separate thread System.out.println("Main Thread"); } } class MyThread extends Thread { public void run() { try { Thread.sleep(1000); } catch (InterruptedException e) { System.out.println("Child Thread interrupted."); } System.out.println("Child Thread"); } }
Im obigen Beispiel verwendet der Hauptthread ThreadRunMethodTest die run()-Methode, um den untergeordneten Thread MyThread aufzurufen. Dadurch wird der untergeordnete Thread vollständig ausgeführt, bevor der Rest des Hauptthreads ausgeführt wird, sodass „Untergeordneter Thread“ vor „Hauptthread“ gedruckt wird.
Child Thread Main Thread
Das obige ist der detaillierte Inhalt vonWas passiert, wenn wir die run()-Methode in Java direkt aufrufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!