Estoy tratando de explicar el concepto de manera simple, espero que ayude a comprender mejor el concepto de hilo de trabajador.
Definición general: -
A “subproceso de trabajo” es sólo un hilo que corre para realizar algún trabajo de fondo sobre el orden de su jefe (que podemos llamar “cliente”) y el resultado de trabajos de actualización de jefe.
definición técnica: -
Un subproceso de trabajo se define generalmente como un hilo que se activa en las peticiones de los clientes.
Ejemplo 1:
1- Tenemos tienda de pizza, donde hay 10 chicos que son expertos en la preparación de un delicioso pizzas. Estos se llaman como "hilos de trabajo".
2- Tenemos un tipo que recibe los pedidos de los clientes. Ese tipo es llamado como "cliente". Cuando llega un nuevo pedido, uno de los "hilos de trabajo" comienza a preparar la pizza y se actualiza al cliente una vez que se prepara la pizza.
3- Cuando hay menos de 10 pedidos, algunos de los trabajadores simplemente se sientan ideales.
4- Cuando hay más de 10 pedidos, los pedidos se ponen en cola de espera.
Ejemplo 2:
1- No es un servidor de aplicación que escucha en el puerto 8080.
2- llega una petición en el puerto 8080.
3- Un hilo oyente (se llama como "cliente") toma esa solicitud y la envía a un "hilo de trabajo" que completa la solicitud. En realidad, se mantiene un conjunto de "subprocesos de trabajo" (muchos objetos del programa "subproceso de trabajo") en el servidor de aplicaciones.
4- Si entran dos solicitudes al mismo tiempo, se asignan dos subprocesos de trabajo y la tarea se ejecuta simultáneamente.
¿Estás seguro de que tu aplicación necesita muchos hilos? El hecho de que haga esta pregunta sugiere que debe intentar minimizar el enhebrado ... –
Qué debo hacer: Mis requisitos 1) Leer un socket y escribir en un archivo e insertar valores en DB 2) Seguir supervisando el DB y mostrando ESOS valores actualizados (o valores recién insertados) en la pantalla UI continuamente –
Tj, podría ser útil si indica la plataforma (C#, Java) en las etiquetas. –