static void DoWorkStock()
        {
            try
            {
                _processingStock = true;

                ShopImport import = new ShopImport();
                import.ProcessStock();


                Console.WriteLine("Stock import Completed On: " + DateTime.Now);

                int minutes = 60;
                int hours   = 0;
                int.TryParse(ConfigurationManager.AppSettings["ImportStockIntervalMinutes"], out minutes);
                int.TryParse(ConfigurationManager.AppSettings["ImportStockIntervalHours"], out hours);

                if (minutes > 0 || hours > 0)
                {
                    log.InfoFormat("Next stock run in {0} hours and {1} minutes", hours, minutes);
                    _stockTimer.Interval = (new TimeSpan(hours, minutes, 0)).TotalMilliseconds;
                    _stockTimer.Start();
                }

                _processingStock = false;
                _waitToEndStock.Set();
            }
            catch (Exception ex)
            {
                log.Error("Error import stock", ex);
            }
        }
        public static void Start()
        {
            _running = true;

            ShopImport import = new ShopImport();

            import.ProcessOItems();


//#if DEBUG
//      _productsAndAttributesTimer.AutoReset = false;
//      _productsAndAttributes = new Thread(new ThreadStart(ProductsAndAttributes));
//      _productsAndAttributes.Name = "ProductsAndAttributes";
//      _productsAndAttributes.Start();

//      _stockTimer.AutoReset = false;
//      _stock = new Thread(new ThreadStart(Stock));
//      _stock.Name = "Stock";
//      _stock.Start();


//      _productsTimer.AutoReset = false;
//      _products = new Thread(new ThreadStart(Products));
//      _products.Name = "Products";
//      _products.Start();
//#endif
        }
        static void DoWorkProductsAndAttribuites()
        {
            try
            {
                _processingProductsAndAttributes = true;

                if (ExecuteAtStartup && !productsprocessing)
                {
                    productsprocessing = true;
                    ShopImport import = new ShopImport();
                    import.ProcessProductsAndAttributes();

                    log.Info("Products and Attributes import Completed On: " + DateTime.Now);
                }
                else
                {
                    ExecuteAtStartup = true;
                }

                int minutes = 60;
                int hours   = 0;
                int.TryParse(ConfigurationManager.AppSettings["ImportProductAndAttributesIntervalMinutes"], out minutes);
                int.TryParse(ConfigurationManager.AppSettings["ImportProductAndAttributesIntervalHours"], out hours);

                if (minutes > 0 || hours > 0)
                {
                    log.InfoFormat("Next products and Attributes run in {0} hours and {1} minutes", hours, minutes);
                    _productsAndAttributesTimer.Interval = (new TimeSpan(hours, minutes, 0)).TotalMilliseconds;
                    _productsAndAttributesTimer.Start();
                }

                productsprocessing = false;
                _processingProductsAndAttributes = false;
                _waitToEndProductsAndAttibutes.Set();
            }
            catch (Exception ex)
            {
                log.Error("Error import products and Attributes", ex);
            }
        }