Исходный код вики Пессимистичная блокировка

Редактировал(а) Alexandr Fokin 2025/09/20 10:59

Скрыть последних авторов
Alexandr Fokin 1.7 1 | |Пессимистичная блокировка, Pessimistic lock
Alexandr Fokin 1.6 2 |Алгоритм|(((
Alexandr Fokin 1.4 3 1. Берем элемент. (блокируя его некоторым образом) (в момент блокировки другой обработчик не может получить доступ и ожидает)
4 1. Производим обработку.
Alexandr Fokin 1.8 5 11. Проверяем возможность выполнить действие (за счет блокировки гарантируется, что никто другой не изменить состояние, пока мы не снимем блокировку).
6 11. Выполняем действие.
Alexandr Fokin 1.4 7 1. Сохраняем элемент.
Alexandr Fokin 1.5 8 1. Снимаем блокировку. (Должна быть некоторая гарантия снятия снятия блокировки, даже если обработка или сохранение элемента упадут с ошибкой).
Alexandr Fokin 1.6 9 )))
10 | |
Alexandr Fokin 1.3 11
12 ----
13
14 ==== Внутренние ссылки: ====
15
16 ====== Дочерние страницы: ======
17
18 {{children/}}
19
20 ====== Обратные ссылки: ======
21
22 {{velocity}}
23 #set ($links = $doc.getBacklinks())
24 #if ($links.size() > 0)
25 #foreach ($docname in $links)
26 #set ($rdoc = $xwiki.getDocument($docname).getTranslatedDocument())
27 * [[$escapetool.xml($rdoc.fullName)]]
28 #end
29 #else
30 No back links for this page!
31 #end
32 {{/velocity}}
33
34 ----