public CellIdCollector(Interfaces.ICellStorage storage, int dueTime, int period, bool alwaysOn) { //m_StopThread = false; //m_CurrentCellid = string.Empty; m_CellCollection = new Dictionary <string, GeoLocation>(); m_Lock = new object(); m_DueTime = dueTime; m_Period = period; m_Storage = storage; m_AlwaysOn = alwaysOn; if (m_AlwaysOn) { //System.Threading.TimerCallback tcb = CellCollector; //m_Timer = new System.Threading.Timer(tcb, new object(), System.Threading.Timeout.Infinite, System.Threading.Timeout.Infinite); m_Thread = new Thread(CellCollectorThread); m_Thread.Name = "CellCollectorThread"; //m_Thread.IsBackground = true; } else { m_Timer = new LargeIntervalTimer(); m_Timer.OneShot = false; //run forever m_Timer.FirstEventTime = DateTime.Now.AddMilliseconds(m_DueTime); //start in x seconds m_Timer.Interval = TimeSpan.FromMilliseconds(m_Period); m_Timer.Tick += Timer_Tick; } }
public CellIdCollector(Interfaces.ICellStorage storage, bool alwaysOn) : this(storage, DUE_TIME, PERIOD, alwaysOn) { }
//Default values : DueTime = 10, Period = 2000 public CellIdCollector(Interfaces.ICellStorage storage) : this(storage, DUE_TIME, PERIOD, false) { }