Dispatch an action to an agent. Returns the agent immediately.
Subsequently, in a thread from a thread pool, the state of the agent
will be set to the value of:
(apply action-fn state-of-agent args)
user=> (def my-agent (agent 100)) #'user/my-agent user=> @my-agent 100 ;; Note the following happens asynchronously in a thread ;; pool user=> (send my-agent + 100) #<Agent@5afc0f5: 200> ;; Assuming the addition has completed the value will ;; now be updated when we look at it. user=> @my-agent 200
(defn send
"Dispatch an action to an agent. Returns the agent immediately.
Subsequently, in a thread from a thread pool, the state of the agent
will be set to the value of:
(apply action-fn state-of-agent args)"
{:added "1.0"}
[^clojure.lang.Agent a f & args]
(. a (dispatch f args false)))
Comments top
No comments for send. Log in to add a comment.