Esempio n. 1
0
 public virtual void Dispose()
 {
     _stateMachine.Dispose();
     _stopwatch.Stop();
     _stopwatch.Reset();
     _controllerDisposable.Cancel();
 }
Esempio n. 2
0
        /// <summary>注销状态机</summary>
        public void Unregister(int name, bool isDispose = false)
        {
            IStateMachine fsm = mFSMMapper.Remove(name);

            if (isDispose && (fsm != null))
            {
                fsm.Dispose();
            }
        }
Esempio n. 3
0
        public void Dispose()
        {
            var           list = mFSMMapper.Keys;
            IStateMachine fsm  = default;
            int           max  = list.Count;

            for (int i = 0; i < max; i++)
            {
                fsm = mFSMMapper.GetValue(list[i]);
#if ILRUNTIME
                fsm?.Dispose();
#else
                Utils.Reclaim(fsm);
#endif
            }

#if ILRUNTIME
            mFSMMapper?.Dispose();
#else
            Utils.Reclaim(ref mFSMMapper);
#endif
        }