private void ParserThread()
        {
            string     absoluteFilePath;
            BaseParser parser = Activator.CreateInstance <T>();

            while (true)
            {
                Thread.Sleep(0);

                absoluteFilePath = FileUpdater.GetNextFile <T>();

                Interlocked.Increment(ref m_threadsWorking);
                try
                {
                    parser.ParseFile(absoluteFilePath);
                }
                catch (Exception e)
                {
                    //TODO: LOG ERROR
                }
                finally
                {
                    Interlocked.Decrement(ref m_threadsWorking);
                }
            }
        }