public void Add(IDespatchItem item) { lock (this) { mItems.Enqueue(item); } }
private void Generator_Completed(IDespatchItem item) { lock (mGenerator) { GetUrlItem gui = (GetUrlItem)item; mGenerator.Remove(gui.Key); } }
private void OnRun(object state) { while (!mIsDisposed) { IDespatchItem item = GetItem(); if (item != null) { try { using (item) { item.Execute(); } } catch { } } else System.Threading.Thread.Sleep(50); } }