Clojure agent

2018-12-27 14:24 更新

使用agent命令創(chuàng)建代理。

語(yǔ)法

以下是 agent 基本語(yǔ)法:

(agent state)

參數(shù) ? “state”是應(yīng)該分配給代理的初始狀態(tài)。

返回值 ? 返回具有當(dāng)前狀態(tài)和值的代理對(duì)象。

(ns clojure.examples.example
   (:gen-class))
(defn Example []
   (def counter (agent 0))
   (println counter))
(Example)

輸出

以上示例輸出以下結(jié)果:

#object[clojure.lang.Agent 0x371c02e5 {:status :ready, :val 0}]

與原子數(shù)據(jù)類型一樣,您可以看到代理還具有與其關(guān)聯(lián)的狀態(tài)和值。 要直接訪問代理的值,您需要使用@symbol以及變量名稱。

(ns clojure.examples.example
   (:gen-class))
(defn Example []
   (def counter (agent 0))
   (println @counter))
(Example)

輸出

以上示例輸出以下結(jié)果:

0

你可以從上面的程序清楚地看到,如果你在@counter附加了@符號(hào),你將獲得代理變量的值。

以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)