ThinkingHome.Plugins.Timer
Предоставляет API для периодического выполнения действий по таймеру.
Вы можете отметить методы своего плагина атрибутом ThinkingHome.Plugins.Timer.TimerCallbackAttribute
и указать в его параметрах интервал. Метод вашего плагина будет автоматически вызываться через указанные интервалы времени.
Сигнатура метода, вызываемого по таймеру, должна соответствовать делегату TimerCallbackDelegate
:
public delegate void TimerCallbackDelegate(DateTime now);
int interval
- интервал в милисекундах между вызовами метода.int delay
- задержка в милисекундах перед первым вызовом метода (не обязательный). Если параметрdelay
не указан, будет использоваться случайное значение, не превышающееinterval
(для того, чтобы все таймеры не срабатывали одновременно при старте приложения).
[TimerCallback(30000)]
public void MyTimerHandler(DateTime now)
{
Logger.LogInformation(now);
}