Questa domanda è simile a Should my Scala actors' properties be marked @volatile? ma non è sicuro che la risposta sarà la stessa.Le proprietà dei miei attori Akka devono essere contrassegnate come @volatile?
Ad esempio, quando il configuratore fork-join è stato configurato e lo stato dell'attore non è stato contrassegnato da @volatile, è garantito che lo stato dell'attore verrà propagato attraverso la gerarchia della cache da un core (o processore) a un altro se i thread di lavoro fork/join vengono eseguiti su core (o processori) diversi?
P.S. È giusto che dopo JSR133 sia necessaria solo un'operazione di scrittura/lettura a/da qualsiasi variabile volatile necessaria per svuotare la cache nella memoria principale e vedere tutti i precedenti scritti non volatili da questo thread su altri thread che girano su un altro core (o processore)? Se sì, può essere una risposta, poiché la scansione della coda di lavoro esegue alcune letture e scritture da/a variabili volatili dell'attività FJ.