コード例 #1
0
ファイル: Parse.cs プロジェクト: xuhuo1234/FWindSoft
        public void WriteXml(XmlWriter writer)
        {
            string fullNmae = "";

            if (m_Parse != null)
            {
                fullNmae = m_Parse.GetType().FullName;
            }
            writer.WriteString(fullNmae);
            //writer.WriteEndElement();
        }
コード例 #2
0
        private void Parsing(object paring)
        {
            IParse parser = paring as IParse;

            if (parser == null)
            {
                return;
            }
            //Stopwatch sw = new Stopwatch();

            while (true)
            {
                try
                {
                    // sw.Start();
                    var rezult = parser.Parse();
                    _currentBets[parser.Bookmaker] = rezult;
                }
                catch (ThreadAbortException)
                {
                    Logger.AddLog(
                        $"{parser.GetType()} Успели спарсить только {_currentBets[parser.Bookmaker].Count} ставок. Нехватило времени.",
                        Logger.LogTarget.ParserManager, Logger.LogLevel.Warn);
                }
                catch (Exception ex)
                {
                    Logger.AddLog(
                        $"{parser.GetType()} не спарсили все ставки, а только {_currentBets[parser.Bookmaker].Count} ставки. И вот почему: {ex.Message}",
                        Logger.LogTarget.ParserManager, Logger.LogLevel.Epic);
                }
                finally
                {
                    //var workTime = (int)sw.ElapsedMilliseconds;
                    //if (workTime < 2500)
                    //    Thread.Sleep(2500 - workTime);
                    //sw.Reset();
                }
            }
        }