Clojure-atoms-swap
提供:Dev Guides
Clojure-原子スワップ!
特定の関数に基づいて、原子の値を新しい原子と原子的に交換します。
構文
構文は次のとおりです。
(swap! atom-name function)
パラメータ-「atom-name」は、値をリセットする必要があるアトムの名前です。 「関数」は、アトムの新しい値を生成するために使用される関数です。
戻り値-新しい値を持つアトムは、提供された関数に基づいて設定されます。
例
これがどのように使用されるかの例は、次のプログラムに示されています。
(ns clojure.examples.example
(:gen-class))
(defn example []
(def myatom (atom 1))
(println @myatom)
(swap! myatom inc)
(println @myatom))
(example)
出力
上記のプログラムは、次の出力を生成します。
1
2
上記のプログラムから、スワップの助けを借りて、アトムの値をインクリメントするために 'inc' (インクリメント関数)が使用されていることがわかります! 関数では、新しい値は自動的にアトムに関連付けられます。