43. Nio (optimización multiproceso (resolución de problemas))

Nio (optimización multiproceso (resolución de problemas))

Solución (simular netty):

El primer paso: todos le dejamos procesar en el hilo del trabajador0 (inicialización y registro) para que podamos controlar su secuencia

 

 

Aviso:! ! ! Pero todavía somos llamados por el subproceso jefe anterior (cómo movilizar el subproceso de trabajo antes de que comience), y solo después de que nuestro subproceso de trabajo comience a ejecutar el método de ejecución, se ejecuta el subproceso de trabajador0. Así que tenemos que ponerlo en marcha

Paso 2: Usamos una cola para desacoplar (cola, comunicación de subprocesos)

 

1. Se agrega una tarea a la cola, pero la tarea no se ejecuta inmediatamente

 

2. Después de la selección, sacamos los elementos de la cola (queue.poll) y ejecutamos (.run) (puede estar vacío, por lo que debemos juzgar)

 

  1. Usamos wakeup (active wakeup) para seleccionar y bloquear, cuando no hay evento, selecciona bloques, pero cuando hay un evento, se despierta y se ejecuta

 

prueba:

 

 

Supongo que te gusta

Origin blog.csdn.net/logtcm4/article/details/127832616
Recomendado
Clasificación