无涯教程-Clojure - commute函数

41 阅读1分钟

通勤还用于更改引用类型的值,就像alter和ref-set一样,唯一的区别是,这也需要放在" dosync"块中。

commute - 语法

(commute refname fun)

参数      -refname是保存参考值的变量的名称。 "fun"是用于更改引用类型的值的函数。

返回值  - 引用及其相应的新值。

commute - 示例

以下程序显示了有关如何使用它的示例。

(ns clojure.examples.example
   (:gen-class))
(defn Example []
   (def counter (ref 0))

(defn change [counter] (dosync (commute counter inc))) (change counter) (println @counter)

(change counter) (println @counter)) (Example)

上面的程序产生以下输出。

1
2

参考链接

www.learnfk.com/clojure/clo…