Czy właściwości moich aktorów Scali powinny być oznaczone jako @volatile?
W Scali, jeśli mam prostą klasę w następujący sposób:
<code>val calc = actor { var sum = 0 loop { react { case Add(n) => sum += n case RequestSum => sender ! sum } } } </code>
Czy moje polesum
być oznaczone@volatile
? Podczas gdy aktor jestlogicznie jednowątkowy (tj. wiadomości są przetwarzane sekwencyjnie), poszczególne reakcje mogą zachodzić na osobnych wątkach, a zatem nastate
zmienna może być zmieniana w jednym wątku, a następnie odczytywana z innego.