Алгоритм Скина — различия между версиями
Assaron (обсуждение | вклад) м (переименовал «Алгоритм Скрина» в «Алгоритм Скина»: неправильное название алгоритма) |
Assaron (обсуждение | вклад) м |
||
Строка 1: | Строка 1: | ||
[[Категория: Параллельное программирование]] | [[Категория: Параллельное программирование]] | ||
− | '''Алгоритм | + | '''Алгоритм Скина''' полного порядка сообщений. Используются [[Логические часы Лампорта|логические часы Лампорта]]. |
# Инициатор отправляет сообщение и время | # Инициатор отправляет сообщение и время | ||
# При приеме сообщения процесс помечает сообщение как недоставленное и отправляет свое время инициатору | # При приеме сообщения процесс помечает сообщение как недоставленное и отправляет свое время инициатору | ||
# Когда инициатору вернулись все сообщения, он выбирает максимальное время и снова отправляет сообщение (уже финальную версию) | # Когда инициатору вернулись все сообщения, он выбирает максимальное время и снова отправляет сообщение (уже финальную версию) | ||
# При приеме финального сообщения оно помечается как доставленное и доставляется получателю, если оно имеет минимальное время в очереди сообщений | # При приеме финального сообщения оно помечается как доставленное и доставляется получателю, если оно имеет минимальное время в очереди сообщений |
Версия 10:26, 27 июня 2010
Алгоритм Скина полного порядка сообщений. Используются логические часы Лампорта.
- Инициатор отправляет сообщение и время
- При приеме сообщения процесс помечает сообщение как недоставленное и отправляет свое время инициатору
- Когда инициатору вернулись все сообщения, он выбирает максимальное время и снова отправляет сообщение (уже финальную версию)
- При приеме финального сообщения оно помечается как доставленное и доставляется получателю, если оно имеет минимальное время в очереди сообщений