Pregunta

De acuerdo con el Boost Documentación , que tienen varios subprocesos llaman io_service::run() establece un grupo de subprocesos que el servicio IO puede utilizar para realizar tareas asíncronas. Se establece expresamente que todas las discusiones que se han unido a la piscina se consideran equivalentes.

¿Esto implica que no es posible tener un hilo separado para la lectura de un enchufe y una separada para escribir? Si es posible, ¿cómo iba a poner en práctica este?

¿Fue útil?

Solución

Cualquier subproceso que llama io_service::run() se puede utilizar para invocar manipuladores asíncronos. Pero no se puede especificar en concreto, que el hilo se ejecuta el tipo de operación. Por ejemplo, si se llama a io_service :: run (), en 2 hilos de fondo, y se va a llamar socket::async_send y socket::async_receive en un hilo principal, sus manejadores se ejecutarán en cualquier tema de fondo que está disponible actualmente. Así que sí, todos los temas son básicamente consideran equivalentes, y se pueden usar para cualquier operación asíncrona.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top