更改和ref-set是否更新Clojure中的STM树?

时间:2011-04-14 08:03:14

标签: clojure

我在我的Clojure代码中到处使用refs然后我意识到我到处都在使用ref-set。这是否会破坏STM变化的历史?或者我应该仅使用alterref-set初始化参考?

我不确定差异是否仅仅是语法上的,alter最终会调用ref-set。有人可以开导我吗?

1 个答案:

答案 0 :(得分:4)

(alter aref f arg1 ... argn)

基本相同
(ref-set aref (f @aref arg1 ... argn))

reset!swap!的原子类似。