public cGatherUrlItem Dequeue() { cGatherUrlItem item = null; lock (((ICollection)MainUrls).SyncRoot) { if (this.MainUrls.Count > 0) { lock (((ICollection)MainUrls).SyncRoot) { item = MainUrls.Dequeue(); return(item); } } } lock (((ICollection)RunUrls).SyncRoot) { if (this.RunUrls.Count > 0) { lock (((ICollection)RunUrls).SyncRoot) { item = RunUrls.Dequeue(); return(item); } } } return(item); }
public bool ContainsUrl(string url) { bool resultFlag = false; lock (((ICollection)RunUrls).SyncRoot) { resultFlag = RunUrls.Where(q => q.Url == url).FirstOrDefault() != null; } if (resultFlag == false) { lock (((ICollection)MainUrls).SyncRoot) { resultFlag = MainUrls.Where(q => q.Url == url).FirstOrDefault() != null; } } return(resultFlag); }