Ejecute el trabajo en un subproceso específico

Me gustaría tener un hilo específico, cola para tareas y tareas de proceso en ese hilo separado. La aplicación realizaría Tareas en función del uso de los usuarios y las pondría en cola de tareas. Luego, el hilo separado procesa las tareas. Es vital mantener vivo el hilo y usarlo para procesar tareas en cola, incluso si la cola está vacía.

He intentado varias implementaciones deTaskScheduler conBlockingCollection y limite la concurrencia a solo un subproceso, pero parece que el subproceso se elimina cuando la cola se vacía y la tarea es procesada por otro subproceso.

¿Puede al menos referirme a algunas fuentes sobre cómo lograr este objetivo?

tl; dr Intenta limitar un hilo específico para procesar tareas que se agregan dinámicamente a la cola.

Editar1:

Esta es una aplicación web experimental que utiliza WCF y .NET Framework 4.6. En la biblioteca WCF, estoy tratando de implementar este comportamiento con tareas de procesamiento de un hilo. Este subproceso debe iniciar el prólogo utilizando una biblioteca dll externa y luego trabajar con el prólogo. Si se usa otro hilo en el proceso, la biblioteca arrojaAccessViolationException. He investigado un poco y esto probablemente se deba a los subprocesos mal administrados en esa biblioteca. Tuve una implementación donde tenía cerraduras en todas partes y funcionó. Ahora estoy tratando de reimplementarlo y hacerlo asíncrono para no bloquear el hilo principal con bloqueo.

No estoy en mi computadora pero proporciono algún código cuando llegue a casa más tarde hoy.

Respuestas a la pregunta(1)

Su respuesta a la pregunta