Tengo una cola de bloqueo delimitada en una aplicación que se escribió hace varios años. Digamos que la implementación es menos que estelar, pero funcionó. Sin embargo, tiene algunos problemas de rendimiento. Parece que el .NET 4.0 BlockingCollection<T>
es el reemplazo correcto, pero necesito asegurarme de que realmente se trata de una cola. Es decir, ¿se garantiza que sea estrictamente FIFO si se utiliza de manera individual y de un único consumidor?¿BlockingCollection <T> garantiza la orden de eliminación?
La documentación no dice específicamente. El tema BlockingCollection Qué dice (en las Observaciones):
BlockingCollection<T>
es similar a un de datos tradicionales de cola de bloqueo estructura, excepto que el mecanismo de almacenamiento de datos subyacente se abstrae distancia como unIProducerConsumerCollection<T>
.
Pero nada dice específicamente que las cosas se eliminarán en el mismo orden en que se agregaron.
¿Alguien sabe con certeza?
Downvoter, usted tiene algo que decir? Es costumbre dar una razón para un downvote. –