 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
| n |
Parallel
operator w/synchronization: P || Q
|
|
|
n |
P
and Q proceed in parallel and are obliged to
|
|
|
synchronize
on all the common actions
|
|
|
n |
Example: (c ? x g P(x)) || (c ! m g Q)
|
|
|
n |
Synchronization: the two processes can proceed only
if
|
|
their
actions correspond
|
|
|
n |
Handshaking: sending and receiving is symultaneous
|
|
|
(clearly
an abstraction. Buffered communication can
|
|
|
anyway
be modeled by implementing a buffer process)
|
|
|
n |
Communication: m is transmitted to the first process,
|
|
|
which
continues as P(m).
|
|
|
n |
Broadcasting: c ! m is available for other parallel procs
|
|
| n |
Question: what happens
with the process
|
|
((c?xgP(x)) [] (d?y gQ(y)))
|| (c!m gR)
|
|