Concurrency
Agents
16Creates and returns an agent with an initial value of state and zero or more options (in any order): :meta metadata...
functionclojure.core
Returns the exception thrown during an asynchronous action of the agent if the agent is failed. Returns nil if the ag...
functionclojure.core
Blocks the current thread (indefinitely!) until all actions dispatched thus far, from this thread or agent, to the age...
functionclojure.core
Blocks the current thread until all actions dispatched thus far (from this thread or agent) to the agents have occurre...
functionclojure.core
Returns the error-handler of agent a, or nil if there is none. See set-error-handler!
functionclojure.core
Returns the error-mode of agent a. See set-error-mode!
functionclojure.core
Normally, actions sent directly or indirectly during another action are held until the action completes (changes the a...
functionclojure.core
When an agent is failed, changes the agent state to new-state and then un-fails the agent so that sends are allowed ag...
functionclojure.core
Dispatch an action to an agent. Returns the agent immediately. Subsequently, in a thread from a thread pool, the state...
functionclojure.core
Dispatch a potentially blocking action to an agent. Returns the agent immediately. Subsequently, in a separate thread,...
functionclojure.core
Dispatch an action to an agent. Returns the agent immediately. Subsequently, in a thread supplied by executor, the sta...
functionclojure.core
Sets the ExecutorService to be used by send
functionclojure.core
Sets the ExecutorService to be used by send-off
functionclojure.core
Sets the error-handler of agent a to handler-fn. If an action being run by the agent throws an exception or doesn't p...
functionclojure.core
Sets the error-mode of agent a to mode-keyword, which must be either :fail or :continue. If an action being run by th...
functionclojure.core
Initiates a shutdown of the thread pools that back the agent system. Running actions will complete, but no new actions...
functionclojure.core
Creates and returns an Atom with an initial value of x and zero or more options (in any order): :meta metadata-map ...
functionclojure.core
Atomically sets the value of atom to newval if and only if the current value of the atom is identical to oldval. Retur...
functionclojure.core
Sets the value of atom to newval without regard for the current value. Returns newval.
functionclojure.core
Sets the value of atom to newval. Returns [old new], the value of the atom before and after the reset.
functionclojure.core
Atomically swaps the value of atom to be: (apply f current-value-of-atom args). Note that f may be called multiple t...
functionclojure.core
Atomically swaps the value of atom to be: (apply f current-value-of-atom args). Note that f may be called multiple t...
functionclojure.core
Delivers the supplied value to the promise, releasing any pending derefs. A subsequent call to deliver on a promise wi...
functionclojure.core
Also reader macro: @ref/@agent/@var/@atom/@delay/@future/@promise. Within a transaction, returns the in-transaction-va...
functionclojure.core
Takes a body of expressions and yields a future object that will invoke the body in another thread, and will cache the...
macroclojure.core
Like clojure.core/future but also conveys sci bindings to the thread.
macrosci.core
Takes a function of no args and yields a future object that will invoke the function in another thread, and will cache...
functionclojure.core
Cancels the future, if possible.
functionclojure.core
Returns true if future f is cancelled
functionclojure.core
Returns true if future f is done
functionclojure.core
Returns true if x is a future
functionclojure.core
Returns a promise object that can be read with deref/@, and set, once only, with deliver. Calls to deref/@ prior to de...
functionclojure.core
Returns true if a value has been produced for a promise, delay, future or lazy sequence.
functionclojure.core
Executes exprs in an implicit do, while holding the monitor of x. Will release the monitor of x in all circumstances.
macroclojure.core
- function
clojure.core
Like clojure.core/pmap but also conveys sci bindings to the threads.
functionsci.core
Creates a queued seq on another (presumably lazy) seq s. The queued seq will produce a concrete seq in the background,...
functionclojure.core
Creates and returns a Volatile with an initial value of val.
functionclojure.core
Returns true if x is a volatile.
functionclojure.core
Sets the value of volatile to newval without regard for the current value. Returns newval.
functionclojure.core
Non-atomically swaps the value of the volatile as if: (apply f current-value-of-vol args). Returns the value that ...
macroclojure.core
Refs
10Must be called in a transaction. Sets the in-transaction-value of ref to: (apply fun in-transaction-value-of-ref ar...
functionclojure.core
Must be called in a transaction. Sets the in-transaction-value of ref to: (apply fun in-transaction-value-of-ref ar...
functionclojure.core
Runs the exprs (in an implicit do) in a transaction that encompasses exprs and any nested calls. Starts a transaction...
macroclojure.core
Must be called in a transaction. Protects the ref from modification by other transactions. Returns the in-transaction...
functionclojure.core
Creates and returns a Ref with an initial value of x and zero or more options (in any order): :meta metadata-map ...
functionclojure.core
Returns the history count of a ref
functionclojure.core
Gets the max-history of a ref, or sets it and returns the ref
functionclojure.core
Gets the min-history of a ref, or sets it and returns the ref
functionclojure.core
Must be called in a transaction. Sets the value of ref. Returns val.
functionclojure.core
transaction-flags => TBD, pass nil for now Runs the exprs (in an implicit do) in a transaction that encompasses expr...
macroclojure.core