2

我正在研究 Clojure 中的并发编程。 http://clojure.org/concurrent_programming

我知道atomrefagent形式用于维护程序状态。

只有ref用于协调更新,因此执行更改时使用dosync宏。

所以很明显,这时候就涉及到了STM引擎。

只是想清楚我有以下疑问,

Clojure STM 是否也与原子和代理形式有关系?还是他们只是利用了 java.util.concurrent.atomic 功能?

4

1 回答 1

5

STM 与代理相关sendsend-off并且在块send-via内调用时dosync,仅在事务成功提交时(并且如果)生效。

STM 和 Atom 之间没有关系。

于 2013-09-24T08:29:35.543 回答