public override void Stop() { if (Listener != null) { Listener.StopMatriksPriceSocket(); } StreamMessageQueue.Stop(); StreamMessageQueue.Dispose(); Parser001Queue.Stop(); Parser001Queue.Dispose(); Parser002Queue.Stop(); Parser002Queue.Dispose(); Parser012Queue.Stop(); Parser012Queue.Dispose(); Parser020Queue.Stop(); Parser020Queue.Dispose(); Parser060Queue.Stop(); Parser060Queue.Dispose(); Parser064Queue.Stop(); Parser064Queue.Dispose(); ParserUnkownQueue.Stop(); ParserUnkownQueue.Dispose(); //DbLogQueue.Stop(); //DbLogQueue.Dispose(); StartEnabled = true; StopEnabled = false; WatchEnabled = false; }
private void CrackParser(string tmpLine) { if (string.IsNullOrEmpty(tmpLine) || tmpLine.Length < 10) { ParserUnkownQueue.Enqueue(new ParserArg() { Func = UnkownParser, Parameter = tmpLine }); } else { string head = tmpLine.Substring(0, 3); switch (head) { case "001": Parser001Queue.Enqueue(new ParserArg() { Func = TryParse001, Parameter = tmpLine }); break; case "002": Parser002Queue.Enqueue(new ParserArg() { Func = TryParse002, Parameter = tmpLine }); break; case "012": Parser012Queue.Enqueue(new ParserArg() { Func = TryParse012, Parameter = tmpLine }); break; case "020": Parser020Queue.Enqueue(new ParserArg() { Func = TryParse020, Parameter = tmpLine }); break; case "021": Parser020Queue.Enqueue(new ParserArg() { Func = TryParse021, Parameter = tmpLine }); break; case "022": Parser020Queue.Enqueue(new ParserArg() { Func = TryParse022, Parameter = tmpLine }); break; case "060": case "061": Parser060Queue.Enqueue(new ParserArg() { Func = TryParse060, Parameter = tmpLine }); break; case "062": case "063": case "064": Parser064Queue.Enqueue(new ParserArg() { Func = TryParse064, Parameter = tmpLine }); break; case "065": ParserUnkownQueue.Enqueue(new ParserArg() { Func = NullParser, Parameter = tmpLine }); break; } } }