コード例 #1
0
ファイル: SetupCommandLine_sa.cs プロジェクト: larytet/JQuant
        protected void algoStop(IWrite iWrite, string cmdName, object[] cmdArguments)
        {
            if (IsLogged(iWrite))
            {
                //stop and dispose algo
                if (algoMachine != default(Algo.Base))
                {
                    algoMachine.StopGracefull();
                    DataCollector.rezefProducer.RemoveConsumer(algoMachine);
                    algoMachine.Dispose();
                    algoMachine = default(Algo.Base);
                }
                //stop and dispose OrderFSM
                if (rezefOrderFSM != default(FMRShell.RezefOrderFSM))
                {
                    rezefOrderFSM.Dispose();
                    rezefOrderFSM = default(FMRShell.RezefOrderFSM);
                }

                //TODO - test if there is no other users, before calling DataCollector.Stop
                if (DataCollector != default(FMRShell.Collector))
                {
                    DataCollector.Stop(FMRShell.DataType.Rezef);
                }
            }
        }