Sé que la lectura desde un solo objeto a través de múltiples hilos es segura en Java, siempre que el objeto no se haya escrito. Pero, ¿cuáles son las implicaciones de rendimiento de hacer eso en lugar de copiar los datos por hilo?¿Cuáles son las implicaciones de rendimiento de compartir objetos entre subprocesos?
¿Los hilos tienen que esperar a que otros terminen de leer la memoria? ¿O los datos están copiados implícitamente (el motivo de existencia de volatile
)? Pero, ¿qué haría eso por el uso de memoria de toda la JVM? ¿Y cómo difiere todo cuando el objeto que se lee es más antiguo que los hilos que lo leen, en lugar de crearse en su tiempo de vida?
Esto responde mi pregunta, así que gracias, aquí hay una aceptación. Sin embargo, estoy interesado en cómo funciona el acceso paralelo en el nivel de hardware, pero quizás eso está fuera del alcance de esta pregunta en particular. –