Pregunta

Creé un modelo para ejecutar tareas de trabajo en una aplicación de servidor usando un grupo de subprocesos asociado con un puerto de finalización de IO, como se muestra en las publicaciones a continuación:

http://weblogs.asp.net/kennykerr/archive/2008/01/03/parallel-programming-with-c-part-4-i-o-completion-ports.aspx

http://blogs.msdn.com/larryosterman/archive/2004/03/29/101329.aspx

¿Hay alguna clase de impulso que pueda ayudar con este modelo de programación?

¿Fue útil?

Solución

En realidad no, al menos no la última vez que miré.Quiero decir, boost::thread_group podría hacer que las cosas estén un poco más ordenadas en algunos lugares, pero no tanto como para hacer una gran diferencia, no lo creo.

El soporte de subprocesos de Boost parece marginalmente útil cuando se escribe algo que es multiplataforma, pero dado que lo que estás escribiendo será específico de Win32 de todos modos (debido al uso de IOCP), realmente no parece haber muchos beneficios de eso. .

Otros consejos

Es posible que desee consultar el proyecto de grupo de subprocesos, que parece una buena implementación de grupo de subprocesos además del impulso.No lo he probado yo mismo, pero se ve bastante bien.

No he visto nada en boost que ayude con la estructura con la que tiendes a terminar cuando usas IO Completion Ports, pero no he visto eso recientemente...Sin embargo, un poco fuera de tema, es posible que desee echar un vistazo al grupo de subprocesos basado en IOCP que forma parte de mi marco de servidor IOCP gratuito.Podría darte algunas ideas al menos.Puedes encontrar el código. aquí.El grupo de subprocesos admite la expansión y contracción según la demanda y se ha utilizado en sistemas de producción durante más de 6 años.

AS tiene algunos reactores que puedes usar para modelar cosas en torno a tus IOCP.Algunos de estos podrían haberse agregado para impulsar, pero el impulso hace que construirlos sea bastante fácil.

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