2024 Clojure调查中分享您的想法!

欢迎!请查阅关于页面以获取更多有关如何使用本网站的信息。

0
Clojure

(在此处请求http://groups.google.com/group/clojure/browse_thread/thread/119311e89fa46806/4903ce25ff6deaa6#4903ce25ff6deaa6)

总体思路是在事务内部声明不可变性,当在提交时不可变性不再保持,事务将重新尝试。
因此,它既可以作为一种软保障,也可以指定“部分兼容”的操作。
因此,它将启用更粗糙的引用。

请参阅附件中的快速原型。

用户代码将如下所示

`(invariant (@world :key))
(commute world update-in [:key] val-transform-fn)`

这意味着只有当(@world :key)在事务中和提交点返回相同的值时,才执行commute操作。

2 个回答

0
参考:https://clojure.atlassian.net/browse/CLJ-213(由alex+import提交)
...