store/[org.clojure/clojure "1.8.0"] clj::clojure.core/send

Official Documentation

Add notes
Arities
==================================================
   [a f & args]

Docstring
==================================================
  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)

Source

(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"
   :static true}
  [^clojure.lang.Agent a f & args]
  (apply send-via clojure.lang.Agent/pooledExecutor a f args))

Example 1

Edit
(def my-agent (agent 100))
;; => #'user/my-agent

@my-agent
;; => 100

;; Note the following happens asynchronously in a thread pool
(send my-agent + 100)
;; => #<Agent@5afc0f5: 200>

;; Assuming the addition has completed the value will now be updated when we
;; look at it.
@my-agent
;; => 200

Uses on crossclj