Clojure的引用类型:var,ref,agent和atom

作为其他值的容器,也都可以解引用。

在deref不会阻塞。

atom

用swap! 修改

;; make an atomic list
(def players (atom ()))
;; #'user/players

;; conjoin a keyword into that list
(swap! players conj :player1)
;;=> (:player1)

;; conjoin a second keyword into the list
(swap! players conj :player2)
;;=> (:player2 :player1)

;; take a look at what is in the list
(deref players)
;;=> (:player2 :player1)

 

swap! 接受函数 和参数,把atom里的作为第1个参数。后面参数不限

 

上一篇:搭建在线答题小程序的三种方式,你喜欢哪一种?


下一篇:saas 系统租户个性化域名&&租户绑定自己域名的解决方案(转)