Questa è una domanda teorica motivata dal mio desiderio di comprendere meglio la concorrenza di Clojure.È necessario leggere più riferimenti Clojure in una transazione per coerenza?
Diciamo che sto scrivendo boids. Assumi che ogni boid sia una posizione di muting a thread verde separata in un vettore o ref che rappresenta una griglia mondiale. Pensa alla colonia di formiche di Hickey.
Ora, la documentazione su Clojure.org afferma "Tutte le letture di Ref vedranno un'istantanea coerente del" mondo Ref "come punto di partenza della transazione (il suo 'punto di lettura')."
Significa questo posso solo ottenere un'istantanea coerente della mia simulazione, ad esempio per disegnarlo, leggendo il mio vettore di arbitri all'interno di una transazione (vale a dire in un contesto dosync?)
Grazie!