This is documentation for an obsolete product.
Current products and services
Previous section-----Next section


Send[link, cmd]sends cmd for evaluation to the remote kernel connected to link; returns link
Send[{links...}, cmd]sends cmd for evaluation to all remote kernels listed
ReceiveIfReady[link]returns a result waiting on the given link; returns $NotReady if no result is waiting
ReceiveIfReady[link, h]wraps the result in h[...] before returning it
Receive[link]waits for a result on the given link and returns it
Receive[{links...}]waits for a result on each of the links and returns them in a list
Receive[links, h]wraps the results in h[...] before returning them
RemoteEvaluate[cmd, link]sends cmd for evaluation to the remote kernel connected to link, then waits for the result and returns it
RemoteEvaluate[cmd, {links...}]sends cmd for evaluation to the remote kernels given, then waits for the results and returns them
RemoteEvaluate[cmd]sends cmd for evaluation to all remote kernels and returns the list of results. Equivalent to RemoteEvaluate[cmd, $Slaves]

Sending and receiving commands to and from remote kernels.

Send has the attribute HoldRest so that the given command is not evaluated before it is sent to the remote kernel. RemoteEvaluate has the attribute HoldFirst.
RemoteEvaluate[cmd, link] is equivalent to the combination Send[link, cmd]; Receive[link].
With ReceiveIfReady[link], you can poll several open links for results.
You cannot use RemoteEvaluate while a concurrent computation involving Queue or Wait is in progress. See the chapter Concurrency: Managing Parallel Processes for details.