Richard B. Johnson said this...
>This came up about a year ago. From what I remember, it was determined
>that pipes are not supposed to generate signals when data are available
>because you can't even write to a pipe unless you have a reader already
>reading. Basically, the pipe will block on a write until somebody
>reads it and a reader will block until somebody writes. Attempts to
>set the pipes to non-blocking violates some spec (perhaps POSIX) so
>the result is undefined.
>
>This was what was explained to me when I reported what I thought was a
>bug. You need to use UNIX Sockets for interprocess communication
>instead of pipes if you want signals for synchronization. Sockets
>produce the behavior you expect.
>
Is it possible to use poll() to determine if each side of the pipe can
read/write without blocking?
-mike
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
Please read the FAQ at http://www.tux.org/lkml/