Технология программирования для распределенных параллельных систем. Демьянович Ю.К - 58 стр.

UptoLike

process Sieve[i=2 to L] {
int p, next;
Sieve[i-1]?p; # - запросить первое число у i-1-го,
# p является простым
do Sieve[i-1]?next -->
# - запросить следующее число у i-1-го
if (next mod p)!=0 -->
# если оно не делится на p,
# то передать его дальше:
Sieve[i+1]!next;
fi
od
}
Замечание 1. Для нормального завершения всех процессов в
конце списка можно поместить маркер, после получения которого
каждый из рассмотренных процессов нормально завершается.
Замечание 2. Когда программа заканчивается, то искомый на-
бор п ростых чисел находится в переменных p рассматриваемых
процессов.
59