Signal Handling Woes
Volker Stolz
stolz at i2.informatik.rwth-aachen.de
Tue Nov 11 18:34:54 EST 2003
In local.cvs-ghc, you wrote:
> I'm really not sure what happens when two signal handlers try to write
> to the same pipe at the same time. Are multi-byte writes from separate
> threads atomic with respect to each other? They seem to be on Mac OS,
> but I'd prefer a written guarantee... But see 6) below.
SUSv3 says:
"Write requests to a pipe or FIFO shall be handled in the same way as a
regular file with the following exceptions:
There is no file offset associated with a pipe, hence each write request
shall append to the end of the pipe.
Write requests of {PIPE_BUF} bytes or less shall not be interleaved with
data from other processes doing writes on the same pipe. Writes of greater
than {PIPE_BUF} bytes may have data interleaved, on arbitrary boundaries,
with writes by other processes, whether or not the O_NONBLOCK flag of the
file status flags is set."
--
http://www-i2.informatik.rwth-aachen.de/stolz/ *** PGP *** S/MIME
rage against the finite state machine
More information about the Cvs-ghc
mailing list