public void ReleaseTickerTaskWithID(uint tickerTaskID) { if (tickerTaskID == 0) { return; } if (m_tickerTaskList == null || m_tickerTaskAssistList == null) { return; } TickerTask tickerTask = null; for (int index = m_tickerTaskList.Count - 1; index >= 0; --index) { tickerTask = m_tickerTaskList[index]; if (tickerTask == null) { continue; } if (tickerTask.TickerID == tickerTaskID) { tickerTask.WaitForRelease(); break; } } }
public void Clear() { if (m_tickerTaskList != null) { TickerTask tickerTask = null; for (int index = 0; index < m_tickerTaskList.Count; ++index) { tickerTask = m_tickerTaskList[index]; if (tickerTask == null) { continue; } ReleaseTickerTask(tickerTask); } m_tickerTaskList.Clear(); } if (m_tickerTaskAssistList != null) { TickerTask tickerTask = null; for (int index = 0; index < m_tickerTaskAssistList.Count; ++index) { tickerTask = m_tickerTaskAssistList[index]; if (tickerTask == null) { continue; } ReleaseTickerTask(tickerTask); } m_tickerTaskAssistList.Clear(); } }
public TickerGroup FindTickerGroupWithID(uint tickerTaskID) { TickerTask tickerTask = FindTickerTaskWithID(tickerTaskID); TickerGroup targetTickerGroup = tickerTask as TickerGroup; return(targetTickerGroup); }
public Ticker FindTickerWithID(uint tickerTaskID) { TickerTask tickerTask = FindTickerTaskWithID(tickerTaskID); Ticker targetTicker = tickerTask as Ticker; return(targetTicker); }
private TickerTask FindTickerTaskWithID(uint tickerTaskID) { if (tickerTaskID == 0) { return(null); } if (m_tickerTaskList == null || m_tickerTaskAssistList == null) { return(null); } TickerTask targetTickerTask = null; TickerTask tickerTask = null; for (int index = m_tickerTaskList.Count - 1; index >= 0; --index) { tickerTask = m_tickerTaskList[index]; if (tickerTask == null) { continue; } if (tickerTask.TickerID == tickerTaskID) { targetTickerTask = tickerTask; break; } } if (targetTickerTask == null) { for (int index = m_tickerTaskAssistList.Count - 1; index >= 0; --index) { tickerTask = m_tickerTaskAssistList[index]; if (tickerTask == null) { continue; } if (tickerTask.TickerID == tickerTaskID) { targetTickerTask = tickerTask; break; } } } return(targetTickerTask); }
private void ReleaseTickerTask(TickerTask tickerTask) { if (tickerTask == null) { return; } tickerTask.OnRelease(); if (tickerTask is Ticker) { if (m_tickerReleaser != null) { m_tickerReleaser(tickerTask as Ticker); } } if (tickerTask is TickerGroup) { if (m_tickerGroupReleaser != null) { m_tickerGroupReleaser(tickerTask as TickerGroup); } } }
internal override void Update() { if (!this.Valid) { return; } if (!m_isStart) { return; } if (m_tickerTaskList == null || m_tickerTaskAssistList == null) { return; } TickerTask tickerTask = null; for (int index = 0; index < m_tickerTaskList.Count; ++index) { tickerTask = m_tickerTaskList[index]; if (tickerTask == null) { continue; } if (tickerTask.Valid) { m_tickerTaskAssistList.Add(tickerTask); if (tickerTask.StartTick < m_updateTick || m_updateTick == 0) { tickerTask.Update(); } } else { this.ReleaseTickerTask(tickerTask); } } }