Un agente se crea mediante el comando de agente.
Sintaxis
A continuación se muestra la sintaxis.
(agent state)
Parameters - 'estado' es el estado inicial que debe asignarse al agente.
Return Value - Devuelve un objeto de agente con un estado y un valor actuales.
Ejemplo
(ns clojure.examples.example
(:gen-class))
(defn Example []
(def counter (agent 0))
(println counter))
(Example)
Salida
El programa anterior produce la siguiente salida.
#object[clojure.lang.Agent 0x371c02e5 {:status :ready, :val 0}]
Al igual que el tipo de datos del átomo, puede ver que el agente también tiene un estado y un valor asociado. Para acceder al valor del agente directamente, debe usar el símbolo @ junto con el nombre de la variable.
Ejemplo
En el siguiente programa se muestra un ejemplo de cómo se usa.
(ns clojure.examples.example
(:gen-class))
(defn Example []
(def counter (agent 0))
(println @counter))
(Example)
Salida
El programa anterior produce la siguiente salida.
0
Puede ver claramente en el programa anterior que si ha agregado el símbolo @ como @counter, obtendrá acceso al valor de la variable del agente.
clojure_agents