public void SetCompleteJob(TseJob job) { Console.WriteLine("[ SetCompleteJob ] 準備把任務[ {0} ]設定為完成", job.MainDirName); JobCreator creator = null; if (this._jobCreatorMap.TryGetValue(job.CreatorType, out creator)) { creator.AddCompleteJob(job); } }
/// <summary> /// 定時產生一個任務 /// </summary> /// <param name="state"></param> public void CreateJob(object state) { Console.WriteLine("[ CreateJob ] Thread Timer 開始定時產生一個TseJob"); JobCreator creator = null; do { creator = this._creatorFactory.RandomProduce(); if (creator != null) { TseJob aJob = null; do { aJob = creator.CreateJob(); } while (aJob == null); AddJob(aJob); } } while (creator == null); }
private JobCreator Produce(JobCreatorType t) { JobCreator creator = null; Console.WriteLine("[ Produce ] 準備產生JobCreatorType->[ {0} ]", t); if (this._jobCreatorMap.TryGetValue(t, out creator) == false) { switch (t) { case JobCreatorType.MiIndex: creator = new MiIndexJobCreator(); break; case JobCreatorType.Fmtqik: creator = new FmtqikJobCreator(); break; case JobCreatorType.StockFirst: creator = new StockFirstJobCreator(); break; case JobCreatorType.MiIndex20: creator = new MiIndex20JobCreator(); break; case JobCreatorType.Mi5Mins: creator = new Mi5MinsJobCreator(); break; case JobCreatorType.Bfiamu: creator = new BfiamuJobCreator(); break; case JobCreatorType.StockDay: creator = new StockDayJobCreator(); break; case JobCreatorType.Twtasu: creator = new TwtasuJobCreator(); break; case JobCreatorType.StockDayAvg: creator = new StockDayAvgJobCreator(); break; case JobCreatorType.Fmsrfk: creator = new FmsrfkJobCreator(); break; case JobCreatorType.Fmnptk: creator = new FmnptkJobCreator(); break; case JobCreatorType.Twt72u: creator = new Twt72uJobCreator(); break; case JobCreatorType.Twt93u: creator = new Twt93uJobCreator(); break; case JobCreatorType.MiMargin: creator = new MiMarginJobCreator(); break; default: creator = null; break; } if (creator != null) { Console.WriteLine("[ Produce ] 把[ {0} ]類型的JobCreator放入集合中", t.ToString().ToUpper()); this._jobCreatorMap.Add(t, creator); } } if (creator != null) { Console.WriteLine("[ Produce ] 這次產生(或找到)[ {0} ]類型的JobCreator", t.ToString().ToUpper()); } return(creator); }