Tengo una aplicación C# 4.0 con "alta prioridad" y las colas de "baja prioridad" implementado como tal:algoritmo para el procesamiento de .NET hilo consumidor de dos colas (basado en prioridad)
BlockingCollection highPriority = new BlockingCollection (1000); BlockingCollection lowPriority = new BlockingCollection (1000);
Cualquier dato producido en highPriority debe consumirse antes que cualquier dato producido en lowPriority. El giro aquí es que los datos pueden producirse en cualquiera de las dos colas en cualquier momento. Entonces, después de haber consumido todos los datos en highPriority, entonces voy a consumir cualquier información que pueda estar en lowPriority. Si se producen nuevos datos en highPriority mientras estoy consumiendo datos en lowPriority, quiero terminar de consumir el elemento actual en lowPriority y luego volver a procesar los datos en highPriority.
¿Alguien puede sugerir un algoritmo para ayudar con esto? El seudo código está bien. Muchas gracias.
¡Muchas gracias! – user685869