Почему часы нужны для логотипа?

Я планирую P2P-совместное программное обеспечение для редактирования, и я планировал перейти на WOOT. Проблема состояла бы в том, что у меня были бы множество надгробий (атомы - это символы...), поэтому я искал больше и нашел этот PDF о подходе Logoot. Для меня все ясно, кроме одного: зачем каждому сайту нужны часы? Я не смог найти ничего в документе, который упоминает цель этого значения.

Есть ли ситуация, которая требует разрешения часов без конфликта?

2 ответа

Мне тоже было интересно. Не официальный источник, но в соответствии с документами для пакета логотипа npm:

Обратите внимание, что векторные значения часов не сравниваются. Векторные значения часов используются для обеспечения уникальных идентификаторов атомов, а не для упорядочения.

Есть ли ситуация, требующая бесконфликтного решения с помощью часов?

Есть, и мне потребовалось гораздо больше времени, чтобы понять это, чем я готов признать:

Скажем, у нас есть массив = [] (где позиция выхода) и два клиента и .
делает это: удалить(), вставить(); local = []
делает это: delete(); местный = []

после применения операций он получает = [P]
послеC1применяетсяC2операций он получаетA= []
Ой.

Поскольку logoot не использует надгробные камни, клиент может создать позицию, которую он сам удалил ранее, поэтому вам нужноclockчтобы избежать вышеупомянутой ситуации.

Другие вопросы по тегам