Warum wird run () nicht sofort aufgerufen, wenn start () für ein Thread-Objekt in java @ aufgerufen wi

Oder ist es
Ich habe ein Thread-Objekt von:

Thread myThread = new Thread(pObject);

Wo pObject ist ein Objekt einer Klasse, die die Runnable-Schnittstelle implementiert, und dann habe ich die start-Methode für das Thread-Objekt wie folgt aufgerufen:

myThread.start();

ach meinem Verständnis ruft die JVM beim Aufruf von start () implizit (und sofort) die run () -Methode auf, die möglicherweise (wie in meinem Fall) überschrieben wird.

In meinem Fall scheint es jedoch so, dass die start () -Methode nicht sofort (wie gewünscht) aufgerufen wird, sondern bis die anderen Anweisungen / Methoden aus dem aufrufenden Block abgeschlossen sind, dh wenn ich nach dem start () -Methode einen solchen Aufruf hatte :

myThread.start();
doSomethingElse();

doSomthingElse () wird ausgeführt, bevor die run () -Methode überhaupt ausgeführt wird.
Vielleicht irre ich mich mit der anfänglichen Prämisse, dass run () immer direkt nach dem Aufruf von start () aufgerufen wird. Bitte helfen Sie! Der gewünschte Befehl führt run () direkt nach start () aus. Vielen Dank

Antworten auf die Frage(6)

Ihre Antwort auf die Frage