private void ReEnqueueFiles() { if (reEnqueueItems) { return; } try { Console.WriteLine("Start ReEnqueueQueueItems"); reEnqueueItems = true; string path = GetRelayPath(); if (Directory.Exists(path)) { string[] messages = Directory.GetFiles(path, "*.mcq"); if (messages == null || messages.Length == 0) { return; } Console.WriteLine("{0} items found to ReEnqueue", messages.Length); Netlog.InfoFormat("ReEnqueueFiles: {0} ", messages.Length); foreach (string message in messages) { //while (this.Count > 1000) //{ // Thread.Sleep(1000); //} QueueItem item = QueueItem.ReadFile(message); if (item != null) { Enqueue(item as IQueueItem); } SysUtil.DeleteFile(message); Thread.Sleep(100); } Netlog.Info("ReEnqueueFiles finished. "); } } catch (Exception ex) { string s = ex.Message; } finally { reEnqueueItems = false; } }