Inicie varios subprocesos en segundo plano dentro del microservicio de núcleo ASP.NET autónomo

¿Dónde puedo crear múltiples hilos de fondo de larga ejecución enSelf Hosted Self Contained ASP.NET Core Microservice cuya vida es igual a la vida útil del microservicio? Para que la información recuperada de los hilos se pueda enviar como respuesta a las solicitudes.

Intenté el código dado pero reduce el rendimiento de la solicitud http cuando los subprocesos en segundo plano están ocupados. El método principal del archivo Program.cs es:

static void Main(string[] args)
{
    //Start background thread1
    //Start background thread2
    //Around 10 background threads
    //Start host
    var host = new WebHostBuilder()
        .UseKestrel()
        .UseUrls(ServerUrl)
        .UseConfiguration(config)
        .UseContentRoot(Directory.GetCurrentDirectory())
        .UseIISIntegration()
        .ConfigureServices(s => s.AddRouting())
        .Configure(app => app.UseRouter(r => { (new Router()).Route(r); }))
        .Build();
    host.Run();
}

Los hilos funcionan de esta manera:

Thread t1 = new Thread(StartWork);
t1.IsBackground = true;
t1.Start();

public void StartWork()
{
    while (ApplicationIsRunning)
    {
        //Get database info >> login into remote devices (SSH) >> get information >> process information >> update application variables and database
        Thread.Sleep(10000);
    }
}

La utilización de la CPU es solo del 1 al 5% cuando los subprocesos están ocupados, pero el rendimiento de la solicitud HTTP es muy malo. Después de ir a dormir, el rendimiento mejora nuevamente.

El problema está en el método de conexión de la conexión del cliente SSH. En algún momento, el método de conexión no responde y también afecta a todos los otros hilos. ¡Eso es extraño!

Renci.SshNet.SshClient sshClient = New Renci.SshNet.SshClient(sshConnectionInfo);
sshClient.Connect();

Si un hilo está ocupado en la conexión por algún motivo, no debería afectar a otros hilos.

Respuestas a la pregunta(2)

Su respuesta a la pregunta