Resultados de la búsqueda a petición "java-memory-model"

1 la respuesta

Si el Hilo B desea ver los cambios que realiza el Hilo A, ¿solo el último cambio puede ser una variable volátil en lugar de todos?

He mirado aesta respuesta [https://stackoverflow.com/questions/8769570/volatile-piggyback-is-this-enough-for-visiblity/8769692#8769692] , y establece cómo: En el nuevo modelo de memoria, cuando el subproceso A escribe en una variable volátil V ...

3 la respuesta

¿JVM garantiza que la memoria caché no sea una variable volátil?

¿JVM garantiza que la memoria caché no sea una variable volátil? ¿Puede un programador depender de JVM para almacenar siempre en caché variables no volátiles localmente para cada subproceso? O JVM puede o no hacer esto, por lo tanto, un ...

1 la respuesta

¿Por qué la fase de asignación se puede aumentar si anulamos el método de finalización?

He oído que en el libro de Joshua Bloch escrito que la asignación y la recopilación de memoria podrían aumentarse a 430 veces si anulamos el método de finalización. Para mí está claro que la recopilación de memoria puede funcionar más ...

2 la respuesta

¿Por qué `sincronizado (nuevo Object ()) {}` no funciona?

En el siguiente código: class A { private int number; public void a() { number = 5; } public void b() { while(number == 0) { // ... } } }Si se llama al método b y luego se inicia un nuevo subproceso que activa el método a, entonces no se ...

4 la respuesta

Comprensión sucede antes y sincronización [duplicado]

Esta pregunta ya tiene una respuesta aquí: Cómo entender lo que sucede antes de ser consistente [/questions/11970428/how-to-understand-happens-before-consistent] 4 respuestas Estoy tratando de entender Javasucede antes de la ...

2 la respuesta

¿Cómo averiguar dónde se encuentra exactamente el gen joven / viejo en la memoria?

Recientemente pude obtener la dirección de un objeto usando la clase sun.misc.Unsafe. Y ahora estoy tratando de encontrar programáticamente una generación real donde se encuentra mi objeto. Para esto quiero saber los puntos de inicio ...

2 la respuesta

Modelo de memoria Java: ¿es seguro crear un gráfico de referencia cíclico de campos de instancia final, todos asignados dentro del mismo hilo?

¿Puede alguien que entienda el Modelo de Memoria Java mejor que yo confirmar mi comprensión de que el siguiente código está sincronizado correctamente? class Foo { private final Bar bar; Foo() { this.bar = new Bar(this); } } class Bar { private ...

5 la respuesta

¿Por qué se requiere la llamada al método setArray () en CopyOnWriteArrayList?

En CopyOnWriteArrayList.java, en el conjunto de métodos (índice int, elemento E) a continuación public E set(int index, E element) { final ReentrantLock lock = this.lock; lock.lock(); try { Object[] elements = getArray(); Object oldValue ...

3 la respuesta

¿Qué hay en el encabezado del objeto Java?

¿Podría darme alguna información sobre qué se almacena exactamente en el encabezado del objeto? Sé que probablemente depende de JVM, pero ¿tal vez para HotSpot al menos? Estoy buscando una descripción exacta específicamente para una primera ...

5 la respuesta

¿Qué prácticas de sincronización JVM puedo ignorar asumiendo que sé que voy a ejecutar en x64 cpus?

Sé que el modelo de memoria JVM está hecho para el mínimo común denominador de CPU, por lo que tiene que asumir el modelo más débil posible de una CPU en la que pueda ejecutarse la JVM (por ejemplo, ARM). Ahora, considerando que x64 tiene un ...