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]
以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号