COLECCIÓN SEGURO DE HASTRAS QUE APORTA EL DESCUENTO DE LOS ARTÍCULOS
-
14-11-2019 - |
Pregunta
Parece que no puedo encontrar un hilo de .NET Safe / Concurrent Recopile que admite una función de eliminación simple () donde puedo eliminar un elemento específico o pasar en un predicado para eliminar los elementos en función de eso.Lo he intentado:
BlockingCollection<T>
ConcurrentQueue<T>
ConcurrentStack<T>
ConcurrentBag<T>
¿Alguien sabe de una colección que apoya este comportamiento, o tengo que crear mi propia?
Quiero poder aprovechar el siguiente elemento de una cola de shot-safe sin eliminándola, y más tarde si se cumple una condición determinada, continúe con la eliminación de ella.
Solución
Have you tried ConcurrentDictionary
? It has a TryRemove
method, so if you think of the key as a predicate, then you will be removing the correct item.
Otros consejos
Are you sure ConcurrentQueue<T>
doesn't suit your needs? It has a TryPeek
method and a TryDequeue
method that do exactly what you describe in the last paragraph.