To jest teoretyczne pytanie motywowane moim pragnieniem lepszego zrozumienia współbieżności Clojure'a.Czy należy powtórzyć wiele transakcji Clojure w transakcji w celu zachowania spójności?
Załóżmy, że piszę boidy. Załóżmy, że każde boid jest oddzielną pozycją mutującą zielony wątek w wektorze lub refs reprezentującą światową siatkę. Pomyśl o kolonii mrówek Hickey.
Teraz dokumentacja na Clojure.org stwierdza "Wszystkie odczyty z Ref będą widzieć spójną migawkę" Ref świata "od momentu rozpoczęcia transakcji (jej" punkt odczytu ")."
To znaczy mogę uzyskać spójny obraz mojej symulacji tylko, na przykład w celu wyciągnięcia go, czytając mój wektor odn obrębie transakcji (czyli w kontekście dosync?)
Dzięki!