Работа с последовательностями¶
sequence – генератор уникальных возрастающих целых чисел.
Уникальность чисел гарантируется в пределах отдельной последовательности с заданным именем даже при вызове
из разных файберов или на разных экземплярах.
Чтобы обеспечить уникальность при вызовах из разных экземпляров, используется роль core.
Эта роль выделяет доступные диапазоны чисел.
Новый диапазон чисел выделяется:
при первом обращении,
при исчерпании выданного ранее диапазона.
По умолчанию для экземпляров или файберов выделяются диапазоны по 100 номеров.
sequence¶
- sequence.get(sequence_name)¶
Возвращает ссылку на объект заданной последовательности. Если последовательность с таким именем отсутствует, создаёт новую последовательность. Объект последовательности имеет единственный метод
next, который возвращает следующий элемент последовательности.Пример использования
На двух разных экземплярах один раз вызывается обработчик, заполняющий поле объекта уникальным номером с помощью метода
next. Тогда на первом экземпляре номер объекта будет1, а на втором –101. Если после этого каждый обработчик вызывать еще 99 раз, то номера объектов будут2–100и102–200соответственно. При повторном запуске обработчика на первом экземпляре объекту будет присвоен номер201.- Parameters
sequence_name – имя последовательности
- Returns
ссылка на объект последовательности
- Return type
table