Мое требование здесь, служба Windows должна запускаться каждые 50 секунд на сервере. Для этого я использую ниже код в OnStart() методОстановка C# Служба Windows TimerCallBack
private Timer stateTimer;
private TimerCallback timerDelegate;
timerDelegate = new TimerCallback(StartService);
stateTimer = new Timer(timerDelegate, null, 0, 50/0.01);
здесь StartService мое имя метода, который вызывается через каждые 50 секунд
Так что теперь сервис работает каждые 50 секунд, это нормально. Теперь, какой код я должен написать, чтобы остановить это выполнение в методе OnStop() Чтобы полностью остановить. Необходимость срочно нужна.
Служба Windows остановлена вызовом метода Stop(). Используйте это в методе обратного вызова таймера, когда выполняются условия для прекращения обслуживания. –
HI Anders, Можете ли вы подробнее рассказать об этом, я попытался использовать этот codestateTimer.Change (Timeout.Infinite, Timeout.Infinite); Но когда я реализую этот код в OnStop, ошибка бросается, поскольку ссылка на объект не установлена на объект. Как я могу ссылаться на тот же объект, который ссылается на метод OnStart – user2979719
Вы имеете в виду, что вы только хотели бы остановить таймер от «тикания» ", вы не хотите вообще прекратить обслуживание? В этом случае, как бы вы возобновили таймер «тикает»? –