Skip to content

ОтелРегистрацияНаблюдателя ​

Токен регистрации наблюдателя — позволяет отменить регистрацию callback.

Описание ​

ОтелРегистрацияНаблюдателя возвращают:

  • ДобавитьCallback асинхронного инструмента — токен связывает инструмент с добавленным callback;
  • ОтелМетр.ЗарегистрироватьОбратныйВызов — токен связывает метр с регистрацией callback нескольких инструментов. Если регистрация отклонена (нет инструментов, инструмент синхронный или создан другим метром), возвращается токен, Закрыть() которого ничего не делает.

Закрыть() отменяет регистрацию.

Конструктор ​

ПараметрТипОписание
ИнструментОтелБазовыйНаблюдаемыйИнструмент, ОтелМетрВладелец регистрации (объект с методом УдалитьCallback)
ДействиеДействие, СтруктураЗарегистрированный callback или регистрация мульти-callback

Методы ​

Закрыть ​

Отменяет регистрацию. После вызова callback больше не вызывается при сборе метрик. Повторный вызов ничего не делает.

Эквивалентно вызову Инструмент.УдалитьCallback(Действие).

Возвращает: Неопределено

Пример ​

bsl
// Регистрация callback
Callback = Новый Действие(ЭтотОбъект, "МойCallback");
Регистрация = НаблюдаемыйСчетчик.ДобавитьCallback(Callback);

// Регистрация callback нескольких инструментов
Инструменты = Новый Массив();
Инструменты.Добавить(НаблюдаемыйСчетчик);
Инструменты.Добавить(НаблюдаемыйДатчик);
РегистрацияМульти = Метр.ЗарегистрироватьОбратныйВызов(
    Новый Действие(ЭтотОбъект, "МойМультиCallback"), Инструменты);

// ... некоторое время работы ...

// Отменить callback-и (например, при завершении работы модуля)
Регистрация.Закрыть();
РегистрацияМульти.Закрыть();