¿Fluye la ejecución de un método de espera cuando se llama a otro método dentro de ella?

sticky_elbows:

Digamos que tiene el siguiente método en MyClass

public class MyClas{
  public void startWork(){
    YourClass.doSomeWork();
    //more things to do in this method
  }
}

y YourClass se ve así:

public class YourClass{
  public static void doSomeWork(){
    // a lot of work to do here
    // maybe even invoke other methods in some other classes
  }
}

ahora lo que me pregunto es cuando el código YourClass.doSomeWork();se ejecuta en el startWork()método, la secuencia de comandos se continúe con la siguiente línea en el mismo método o esperar hasta que doSomeWork()en YourClassacabados de su ejecución?

Tenga en cuenta que doSomeWork()no devuelve nada.

GhostCat saludos Monica C.:

Los predeterminados semántica en la mayoría de idiomas, y sobre todo en Java es, por supuesto, que el código se ejecuta de forma secuencial.

Significado: a menos que hagas adicionales cosas, tales como la presentación de una tarea en un ExecutorService (o la creación de un objeto Thread y llamando a su start()método), y luego , por supuesto, un método externo ejecutará todas las llamadas en secuencia, y cada llamada interior tiene que terminar antes de la siguiente se ejecuta.

En otras palabras: a menos que utilice construcciones específicas en el código fuente, las cosas se ejecutan por un solo hilo, en el orden exacto que se pone en su código. Y sí, las cosas pueden complicarse aún más, ya que las instrucciones pueden ser reordenadas en varios niveles, pero estos aspectos del modelo de memoria de Java no son relevantes para la pregunta básica pidió aquí).

Supongo que te gusta

Origin http://43.154.161.224:23101/article/api/json?id=182907&siteId=1
Recomendado
Clasificación