Clojure alter
2018-12-28 14:39 更新
此函数用于更改引用类型的值,但以安全的方式。 这是在一个线程中运行的,它不能被另一个进程访问。 这就是为什么命令需要与一个'dosync'方法总是相关联。 其次,要更改引用类型的值,需要调用函数以对该值进行必要的更改。
语法
下面是 alter 的使基本语法:
(alter refname fun)
参数 − 'refname'是保存引用值的变量的名称。 'fun'是用于更改引用类型的值的函数。
返回值 − 引用及其对应的新值。
例
下面是 alter 的使用示例:
(ns clojure.examples.example (:gen-class)) (defn Example [] (def names (ref [])) (defn change [newname] (dosync (alter names conj newname))) (change "John") (change "Mark") (println @names)) (Example)
输出
以上示例将输出以下结果:
[John Mark]
以上内容是否对您有帮助:
更多建议: