/// <summary> /// 初始化流程管理器。 /// </summary> /// <param name="fsmManager">有限状态机管理器。</param> /// <param name="procedures">流程管理器包含的流程。</param> public void Initialize(IFsmMethods fsmManager, params ProcedureState[] procedures) { if (fsmManager == null) { throw new Exception("FSM manager is invalid."); } m_FsmManager = fsmManager; m_ProcedureFsm = m_FsmManager.CreateFsm(this, procedures); }
/// <summary> /// 关闭并清理流程管理器。 /// </summary> public override void Dispose() { base.Dispose(); if (m_FsmManager != null) { if (m_ProcedureFsm != null) { m_FsmManager.DestroyFsm(m_ProcedureFsm); m_ProcedureFsm = null; } m_FsmManager = null; } m_AvailableProcedureTypeNames = null; This = null; }