我在http://www.learningclojure.com/2010/11/yet-another-way-to-write-factorial.html找到了这个代码,但我不明白是否/如何假设pop-task是线程安全的.它不允许返回两次相同的头?
(def to-do-list(atom'()))
(defn add-task))
(defn pop-task](交换!待办事项列表休息)h))
如果是这样,是否可以继续使用原子并写下偷看和交换!原子地,或者这是ref机制的工作?
-
谢谢你们两个不错的答案!