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

Материал из Викиконспекты
Перейти к: навигация, поиск
(Новая страница: «Этот алгоритм берёт систему с асинхронным порядком и начинает гарантировать в ней Иера…»)
 
 
(не показана 1 промежуточная версия этого же участника)
Строка 1: Строка 1:
 +
[[Категория: Параллельное программирование]]
 
Этот алгоритм берёт систему с асинхронным порядком и начинает гарантировать в ней [[Иерархия порядков сообщений#FIFO|FIFO-порядок]].
 
Этот алгоритм берёт систему с асинхронным порядком и начинает гарантировать в ней [[Иерархия порядков сообщений#FIFO|FIFO-порядок]].
  
Алгоритм FIFO основан на нумерации сообщений.
+
Алгоритм FIFO основан на нумерации сообщений:
 +
* Для каждой пары процессов нумеруем отправляемые сообщения натуральными числами.
 +
* Отправитель знает номер отправленного сообщения, получатель знает номер следующего ожидаемого сообщения.
 +
* К каждому сообщению прикрепляется номер.
 +
* Если получатель получил "неожиданное" сообщение, то он складывает его в очередь и ждёт. Обрабатывает только когда подойдёт нужный номер.
 +
 
 +
В худшем случае надо хранить много сообщений, но что поделать.

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

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

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

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

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