En una aplicación de Linux estoy usando tuberías para pasar información entre hilos.son tubos posix ligeros?
La idea detrás del uso de tuberías es que puedo esperar varias tuberías a la vez usando la encuesta (2). Eso funciona bien en la práctica, y mis hilos están durmiendo la mayor parte del tiempo. Solo se despiertan si hay algo que hacer.
En el espacio de usuario las tuberías se parecen a dos manejadores de archivos. Ahora me pregunto cuántos recursos usan esas tuberías en el lado del sistema operativo.
Btw: En mi aplicación, solo envío bytes individuales de vez en cuando. Piensa en mis pipas como simples colas de mensajes que me permiten reactivar la recepción de subprocesos, les digo que envíen algunos datos de estado o que finalicen.
Posix especifica la interfaz de la tubería, no la implementación, que es de donde proviene el "peso". –
¿Cuántos canales hay? ¿Cuántos mensajes por segundo? Cientos? Millones? Haga un prototipo simple usando varias tecnologías (cualquier cosa, desde colas de mensajes IPC hasta tuberías, zócalos UNIX, etc.) y compare. –