Похоже, вы используете System.Timers.Timer
, если бы вы использовали System.Threading.Timer
, то вы могли бы передать объект state
, который в данном случае , может быть желаемым экземпляром класса, то есть «владельцем» таймера. Таким образом, вы определяете тело вашего метода так же, как в предыдущем опыте реализации в обработчике событий, только теперь подпись выглядит следующим образом:
private void MyTimerCallbackMethod(object state)
{
}
Затем, после создания экземпляра таймера, вы можете сделать что-то вроде:
var timerCallback = new TimerCallback(MyTimerCallback);
var timer = new Timer(timerCallback, myStateObject,
Timeout.Infinite, Timeout.Infinite);
Затем используйте timer.Change(whenToStart, interval)
, чтобы отключить таймер.