protected override void ClearItems() { QueueList.Clear(); if (CoverMode == CoverMode.FileStream) { m_fs.ClearItems(); } }
public PriorityFsQueue(QueueHost qp) : base(qp.HostName) { int numProcs = Environment.ProcessorCount; int concurrencyLevel = numProcs * 2; int initialCapacity = 101; QueueList = new ConcurrentDictionary <Ptr, IQueueItem>(concurrencyLevel, initialCapacity); //CommitMode = qp.CommitMode; //CoverMode = qp.Mode; RootPath = qp.RootPath; CommitMode = qp.CommitMode; CoverMode = qp.CoverMode; if (qp.CoverMode == CoverMode.FileStream) { CoverMode = CoverMode.FileStream; //DbLiteSettings settings = new DbLiteSettings() //{ // Name = qp.QueueName, // CommitMode = (CommitMode)(int)qp.CommitMode, // DbPath = AgentManager.Settings.QueuesPath //}; //settings.SetFast(); //QueueHost queueHost = qp.GetRoutHost(); m_fs = new FileMessage(qp); m_fs.Logger = Logger; //InitRecoverQueue(); //m_db = new PersistentBinary<IQueueItem>(settings); ////m_db = new PersistentDictionary(settings); //m_db.BeginLoading += M_db_BeginLoading; //m_db.LoadCompleted += M_db_LoadCompleted; //m_db.ErrorOcurred += M_db_ErrorOcurred; //m_db.ClearCompleted += M_db_ClearCompleted; ////m_db.ItemChanged += M_db_ItemChanged; //m_db.ItemLoaded = (item) => //{ // this.ReEnqueue(item); //}; if (qp.ReloadOnStart) { Logger.Info("PriorityFsQueue will load items to : {0}", qp.HostName); m_fs.ReloadItemsAsync(FolderType.Queue, 0, (IQueueItem item) => { this.ReEnqueue(item); }); } else { Logger.Info("PriorityFsQueue will clear all items from : {0}", qp.HostName); m_fs.ClearItems(FolderType.Queue); } } }
protected override void ClearItems() { m_fm.ClearItems(); }