Atoms原子是Clojure中的一种数据类型,提供了一种管理共享,同步,独立状态的方法,原子就像任何其他编程语言中的任何引用类型一样。原子的主要用途是保存Clojure的不可变数据结构。
原子是通过atom方法创建的。
(ns clojure.examples.example (:gen-class)) (defn example [] (def myatom (atom 1)) (println @myatom)) (example)
上面的程序产生以下输出。
1
通过使用@符号可以访问atom的值, Clojure有一些可以对原子执行的操作。
Sr.No. | Operations & 描述 |
---|---|
1 |
reset! 在不考虑当前值的情况下将atom的值设置为新值。 |
2 |
compare-and-set! 当且仅当原子的当前值与原子保持的旧值相同时,才以原子方式将原子的值设置为新值。如果发生设置,则返回true,否则返回false。 |
3 |
swap! 根据特定函数以原子方式将原子的值交换为新值。 |
参考链接
https://www.learnfk.com/clojure/clojure-atoms.html
标签:clojure,Atoms,无涯,新值,原子,atom,Clojure,example From: https://blog.51cto.com/u_14033984/7994493