Concurrency
The Wolfram Language provides not only automatic parallelization capabilities, but also a full built-in symbolic language for specifying concurrent computation.
Concurrent Evaluation
ParallelSubmit — submit expressions to be evaluated concurrently
WaitAll — wait for all concurrent evaluations to finish
WaitNext — wait for the next of a list of concurrent evaluations to finish
EvaluationObject — symbolic representation of an expression submitted for evaluation
Communication & Synchronization »
SetSharedVariable — specify symbols with values to synchronize across subkernels
SetSharedFunction — specify functions whose evaluations are to be synchronized
UnsetShared — stop variables or functions being shared
WithLock — synchronize concurrent access using lock files
CriticalSection — synchronize concurrent access using lock variables
Configuration Information »
$KernelCount — number of running kernels, degree of parallelism
$KernelID — a unique positive integer value assigned to each parallel kernel