Перейти к основному содержимому

СтратегияПовтораЗадания

Стд::Задания::СтратегияПовтораЗадания Доступность: КлиентИСервер

Стратегия повтора для конкретного задания.

Сравнение структурное.

Иерархия типа

Базовые типы: Объект


Методы

Инкремент

Доступность: КлиентИСервер Статический

Инкремент(
Попытки: Число,
Интервал: Длительность,
Инкремент: Длительность = 0мс
): СтратегияПовтораЗадания
Возвращает стратегию повтора, когда задание перезапускается Попытки раз с задержкой, начинающейся с Интервал и увеличивающейся каждый раз на Инкремент.

Примеры

// При ошибке повторять запуск задания с увеличивающимся на 5 секунд интервалом не более 100 раз.
// Начальное значение интервала 10 секунд.
пер Задание = ЗапланированныеЗадания.Создать(&МойМодуль.МойМетод)
Задание.Настроить(Ключ = "МоеЗадание",
ПовторыПриОшибке = СтратегияПовтораЗадания.Инкремент(Попытки = 100, Интервал = 10с, Инкремент = ))
Задание.Запланировать()

Интервал

Доступность: КлиентИСервер Статический

Интервал(
Интервал: Длительность,
Множитель: Число = 1.0,
МаксимальныйИнтервал: Длительность? = Неопределено
): СтратегияПовтораЗадания
Перегрузка:
Интервал(Попытки: Число, Интервал: Длительность, Множитель: Число = 1.0, МаксимальныйИнтервал: Длительность? = Неопределено): СтратегияПовтораЗадания

Возвращает стратегию повтора, когда задание перезапускается с задержкой в Интервал. Значение следующего Интервал вычисляется умножением текущего на Множитель. При значении меньшем 1 уменьшение интервала до значения 1 секунда, и дальше остается равным 1 секунда. При значении большем 1 увеличение интервала до значения МаксимальныйИнтервал, и дальше остается равным МаксимальныйИнтервал. Если МаксимальныйИнтервал имеет значение Неопределено, то увеличивается неограниченно.

Примеры

// При ошибке повторять запуск задания с увеличивающимся на 10% интервалом.
// Начальное значение интервала 10 секунд. При достижении интервала в 60 секунд повторять попытки с периодом 60 секунд.
// При успехе повторять запуск задания через 2 секунды.
пер Задание = ЗапланированныеЗадания.Создать(&МойМодуль.МойМетод)
Задание.Настроить(Ключ = "МоеЗадание",
ПовторыПриОшибке = СтратегияПовтораЗадания.Интервал(10с, Множитель = 1.1, МаксимальныйИнтервал = 60с),
ПовторыПриУспехе = СтратегияПовтораЗадания.Интервал())
Задание.Запланировать()

Интервал

Доступность: КлиентИСервер Статический

Интервал(
Попытки: Число,
Интервал: Длительность,
Множитель: Число = 1.0,
МаксимальныйИнтервал: Длительность? = Неопределено
): СтратегияПовтораЗадания
Перегрузка:
Интервал(Интервал: Длительность, Множитель: Число = 1.0, МаксимальныйИнтервал: Длительность? = Неопределено): СтратегияПовтораЗадания

Возвращает стратегию повтора, когда задание перезапускается Попытки раз с начальной задержкой Интервал, задержка последующих запусков вычисляется умножением текущего значения на Множитель. При значении меньшем 1 уменьшение интервала до значения 1 секунда, и дальше остается равным 1 секунда. При значении большем 1 увеличение интервала до значения МаксимальныйИнтервал, и дальше остается равным МаксимальныйИнтервал. Если МаксимальныйИнтервал имеет значение Неопределено, то увеличивается неограниченно.

Примеры

// При ошибке повторять запуск задания не более 10 раз с увеличивающимся на 10% интервалом. Начальное значение интервала 10 секунд.
пер Задание = ЗапланированныеЗадания.Создать(&МойМодуль.МойМетод)
Задание.Настроить(Ключ = "МоеЗадание",
ПовторыПриОшибке = СтратегияПовтораЗадания.Интервал(Попытки = 10, Интервал = 10с, Множитель = 1.1))
Задание.Запланировать()

Отсутствует

Доступность: КлиентИСервер Статический

Возвращает стратегию повтора, когда задание запускается один раз без повторов.

Примеры

// Запуск задания без повторов при ошибке.
знч Задание = ЗапланированныеЗадания.Создать(&МойМодуль.МойМетод)
Задание.Настроить(Ключ = "МоеЗадание", ПовторыПриОшибке = СтратегияПовтораЗадания.Отсутствует())
Задание.Запланировать()

Список унаследованных методов

Объект

ВСтроку, ПолучитьТип, Представление