Reputation: 34800
Is this a safe way of iterating ConcurrentQueue<T>
?
while (cq.GetEnumerator().MoveNext())
{
IIndexTask task;
if (cq.TryDequeue(out task))
task.Execute(service);
}
Upvotes: 3
Views: 4503
Reputation: 269328
Just do this instead...
IIndexTask task;
while (cq.TryDequeue(out task))
{
task.Execute(service);
}
Upvotes: 9