Clojure - Atoms swap!
基于特定函数以原子方式将原子值与新原子值交换。
语法
语法如下。
(swap! atom-name function)
参数 − 'atom-name'是需要重置值的原子的名称。 'function'是用于生成原子新值的函数。
返回值 − 具有新值的原子将根据提供的函数进行设置。
示例
以下程序显示了如何使用它的示例。
(ns clojure.examples.example (:gen-class)) (defn example [] (def myatom (atom 1)) (println @myatom) (swap! myatom inc) (println @myatom)) (example)
输出
上面的程序产生以下输出。
1 2
从上面的程序中可以看到,'inc'(增量函数)用于增加原子的值,并在 swap! 函数的帮助下,自动关联新值 与原子。