Por ejemplo, creé una tubería con nombre como la siguiente:
mknod myPipe p
Y leí de algún proceso (por ejemplo, algún servidor). Por ejemplo, utilicé tail:
tail -f myPipe
Si varios procesos del cliente escriben algunos mensajes en él (por ejemplo echo "msg" >> myPipe
, ¿hay alguna posibilidad de que los mensajes se intercalen, como este:
<beginning of message1><message2><ending of message1>
¿O el proceso de escribir en una tubería con nombre es atómico?
setvbuf(stdout, NULL, _IOLBF,512)
) hará esto sin requerir que use funciones de bajo nivel.PIPE_BUF
valores observados en sistemas Unix comunes: ar.to/notes/posix#pipe-buf