这是一个理论问题,我希望更好地理解 Clojure 的并发性。
假设我正在写 boids。假设每个 boid 是一个单独的绿色线程,它在表示世界网格的向量或 refs 中改变位置。想想希基的蚁群。
现在,Clojure.org 上的文档指出“所有对 Refs 的读取都将看到从事务起点(它的‘读取点’)开始的‘参考世界’的一致快照。”
这是否意味着我只能通过读取事务中的引用向量(即在 dosync 上下文中)来获得模拟的一致快照,例如绘制它?
谢谢!
这是一个理论问题,我希望更好地理解 Clojure 的并发性。
假设我正在写 boids。假设每个 boid 是一个单独的绿色线程,它在表示世界网格的向量或 refs 中改变位置。想想希基的蚁群。
现在,Clojure.org 上的文档指出“所有对 Refs 的读取都将看到从事务起点(它的‘读取点’)开始的‘参考世界’的一致快照。”
这是否意味着我只能通过读取事务中的引用向量(即在 dosync 上下文中)来获得模拟的一致快照,例如绘制它?
谢谢!