sean@ms.uky.edu (Sean Casey) (06/16/91)
Okay so I'm writing an application where two dissimilar processes need to shove pieces of data at each other in a non-blocking fashion. Process A talks to processes B, C, and D in a star fashion. Any of these processes can be restarted if necessary. I could do one of the following: - FIFOs, which are likely to be the most efficient implementation, but which might be less portable than sockets. But there's POSIX... - UNIX domain sockets, which are (IMHO) a little funkier to set up. But I'm comfy with sockets so that's no real trouble. One thing I noticed is that when a program opens a named pipe, and there's nothing else that has it open, then it just blocks indefinitely, while a UNIX domain socket will get the connection refused if there's nothing to listen. Anyone care to share experiences with the relative merits of the two? Sean -- ** Sean Casey <sean@s.ms.uky.edu>
kiick@b11.ingr.com (chris kiick) (06/17/91)
sean@ms.uky.edu (Sean Casey) writes: >Okay so I'm writing an application where two dissimilar processes need ... >- FIFOs, which are likely to be the most efficient implementation, but > which might be less portable than sockets. But there's POSIX... >- UNIX domain sockets, which are (IMHO) a little funkier to set up. > But I'm comfy with sockets so that's no real trouble. >One thing I noticed is that when a program opens a named pipe, and >there's nothing else that has it open, then it just blocks >indefinitely, while a UNIX domain socket will get the connection >refused if there's nothing to listen. You can open a FIFO with the N_DELAY flag set, and it will return an error code if there isn't anything on the other end. I myself am more comfortable with FIFO's, because they act more like regular files, but that's just my experience. >Anyone care to share experiences with the relative merits of the two? >Sean >-- >** Sean Casey <sean@s.ms.uky.edu> *********************************************************** Chris J. Kiick | work phone: (205) 730-6171 Programmer at Large | Email: ingr!b11!flinx!kiick "Ideas for sale, Cheap!" | ***********************************************************