Составители:
Рубрика:
chan values(int), results[n](int smallest, int largest);
process P[0] { # управляющий процесс
int v; # переменная v считается инициализированной
int new, smallest=v, largest=v; # начальное состояние
# собрать числа, сравнить,
# запомнить минимальное и максимальное:
for [i=1 to n-1] {
receive values(new);
if (new<smallest) smallest=new;
if (new>largest) largest=new;
}
# разослать результаты остальным процессам:
for [i=1 to n-1]
send results[i](smallest, largest);
}
process P[i=1 to n-1] {
int v; # считается, что переменная v инициализирована
int smallest, largest;
send values(v);
receive results[i](smallest, largest);
}
Рис. 4. Структура взаимодействия при асимметричном решении
45
Страницы
- « первая
- ‹ предыдущая
- …
- 42
- 43
- 44
- 45
- 46
- …
- следующая ›
- последняя »