¿O sí?
Tengo un objeto hilo de:¿Por qué no se llama inmediatamente a run() cuando start() invoca un objeto de subproceso en java
Thread myThread = new Thread(pObject);
Dónde pObject es un objeto de una clase que implementa la interfaz Ejecutable y luego tengo el método de inicio del pedido al objeto hilo de esta manera:
myThread.start();
Ahora, entiendo que cuando se invoca start(), la JVM llama implícitamente (e inmediatamente) al método run() que puede anularse (como es en mi caso)
Sin embargo, en mi caso, aparece que el comienzo() método no es llamado inmediatamente (según se desee), pero hasta que los otros estados/métodos se completó Del es decir bloque de llamada si tuviera un método después del inicio() llamar así:
myThread.start();
doSomethingElse();
doSomthingElse() será ejecutado antes el método run() se ejecuta en absoluto.
Quizás estoy equivocado con la premisa inicial de que ejecutar() siempre se llama justo después de que se invoca start(). ¡Por favor ayuda! Lo deseado de nuevo es hacer ejecutar run() justo después de start(). Gracias.
Puede llamar 'Thread.yield()' para "liberar" la CPU para otros hilos, pero eso no significa que usted nuevo hilo es la siguiente. – Progman