/// <summary> /// 关闭并清理所有游戏框架模块。 /// </summary> public static void Shutdown() { for (LinkedListNode <GameFrameworkModule> current = s_GameFrameworkModules.Last; current != null; current = current.Previous) { current.Value.Shutdown(); } s_GameFrameworkModules.Clear(); ReferencePool.ClearAll(); GameFrameworkLog.SetLogHelper(null); }
/// <summary> /// 移除所有任务。 /// </summary> public void RemoveAllTasks() { foreach (T task in m_WaitingTasks) { ReferencePool.Release((IReference)task); } m_WaitingTasks.Clear(); foreach (ITaskAgent <T> workingAgent in m_WorkingAgents) { T task = workingAgent.Task; workingAgent.Reset(); m_FreeAgents.Push(workingAgent); ReferencePool.Release((IReference)task); } m_WorkingAgents.Clear(); }
/// <summary> /// 移除所有任务。 /// </summary> /// <returns>移除任务的数量。</returns> public int RemoveAllTasks() { int count = m_WaitingTasks.Count + m_WorkingAgents.Count; foreach (T task in m_WaitingTasks) { ReferencePool.Release(task); } m_WaitingTasks.Clear(); foreach (ITaskAgent <T> workingAgent in m_WorkingAgents) { T task = workingAgent.Task; workingAgent.Reset(); m_FreeAgents.Push(workingAgent); ReferencePool.Release(task); } m_WorkingAgents.Clear(); return(count); }