Алгоритм для FIFO порядка — различия между версиями

Материал из Викиконспекты
Перейти к: навигация, поиск
 
Строка 1: Строка 1:
 +
[[Категория: Параллельное программирование]]
 
Этот алгоритм берёт систему с асинхронным порядком и начинает гарантировать в ней [[Иерархия порядков сообщений#FIFO|FIFO-порядок]].
 
Этот алгоритм берёт систему с асинхронным порядком и начинает гарантировать в ней [[Иерархия порядков сообщений#FIFO|FIFO-порядок]].
  

Текущая версия на 20:11, 3 июня 2019

Этот алгоритм берёт систему с асинхронным порядком и начинает гарантировать в ней FIFO-порядок.

Алгоритм FIFO основан на нумерации сообщений:

  • Для каждой пары процессов нумеруем отправляемые сообщения натуральными числами.
  • Отправитель знает номер отправленного сообщения, получатель знает номер следующего ожидаемого сообщения.
  • К каждому сообщению прикрепляется номер.
  • Если получатель получил "неожиданное" сообщение, то он складывает его в очередь и ждёт. Обрабатывает только когда подойдёт нужный номер.

В худшем случае надо хранить много сообщений, но что поделать.