send-via asynchronously dispatches an action to a Clojure agent using a specified executor, giving agent work an explicitly chosen execution facility. section 14.6
A small wrapper can place the executor first, then accept an agent, function, and arguments. The action remains asynchronous, so await or dereferencing observes its completed state. section 14.6
Dispatch through a work-stealing pool
Create a java.util.concurrent work-stealing pool, define send-fj around (apply send-via fj-pool a f args), send inc to an agent, await it, and observe the value 2.
