Clojure - agente
Un agente viene creato utilizzando il comando agente.
Sintassi
Di seguito è riportata la sintassi.
(agent state)
Parameters - "stato" è lo stato iniziale che deve essere assegnato all'agente.
Return Value - Restituisce un oggetto agente con uno stato e un valore correnti.
Esempio
(ns clojure.examples.example
(:gen-class))
(defn Example []
(def counter (agent 0))
(println counter))
(Example)
Produzione
Il programma precedente produce il seguente output.
#object[clojure.lang.Agent 0x371c02e5 {:status :ready, :val 0}]
Proprio come il tipo di dati atom, puoi vedere che anche l'agente ha uno stato e un valore ad esso associati. Per accedere direttamente al valore dell'agente è necessario utilizzare il simbolo @ insieme al nome della variabile.
Esempio
Un esempio di come viene utilizzato è mostrato nel seguente programma.
(ns clojure.examples.example
(:gen-class))
(defn Example []
(def counter (agent 0))
(println @counter))
(Example)
Produzione
Il programma precedente produce il seguente output.
0
Puoi vedere chiaramente dal programma sopra che se hai aggiunto il simbolo @ come @counter, avrai accesso al valore della variabile agente.