Tengo una pregunta sobre la invocación de métodos de subprocesos múltiples en Java. Digamos que tenemos un objeto único, y su clase declara como sigue:Invocación simultánea del método Java del objeto singleton
public class SomeClass {
public void someMethod(SomeValueObject object) {
if (object.condition1) {
...
}
if (object.condition2) {
...
}
if (object.condition3) {
...
}
}
}
Me pregunto si este objeto Singleton está siendo simultáneamente acceder y su algunMetodo llama con distintas instancias SomeValueObject, existe la posibilidad de un hilo al azar cambiar la referencia de objeto para la invocación de método de otro hilo y desordenar las cosas? ¿Y qué hay de los campos creados dentro del alcance del método? Lo que no conozco, ¿se crea un contexto de Método separado para cada hilo que invoca el método o el contexto del Método es el mismo para todos los hilos que lo invocan? Si es el último caso, creo que necesito la palabra clave sincronizada para seguridad de subprocesos o uso instancias distintas de SomeClass para cada subproceso (en caso de que necesite una ejecución más rápida sobre la optimización de memoria). ¿Podría explicarme el asunto por favor?
P.S. Gracias por todas sus respuestas chicos!