Newsgroups: comp.unix.programmer Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!think.com!snorkelwacker.mit.edu!thunder.mcrcim.mcgill.edu!mouse From: mouse@thunder.mcrcim.mcgill.edu (der Mouse) Subject: Re: Question about sockets (asynch) Message-ID: <1991Jun15.204557.4367@thunder.mcrcim.mcgill.edu> Organization: McGill Research Centre for Intelligent Machines References: <3449@mtecv2.mty.itesm.mx> <14075@dog.ee.lbl.gov> Date: Sat, 15 Jun 91 20:45:57 GMT Lines: 17 In article <14075@dog.ee.lbl.gov>, torek@elf.ee.lbl.gov (Chris Torek) writes: > In general, there is no reason to mix select and nonblocking I/O: > since select tells you which descriptors will not block, you can > simply avoid operations on those descriptors. There are special > cases, though (shared descriptors, e.g.). Ummm, what about writing? Even when a select() indicates write-ready for a descriptor, a write() can still block, under circumstances which a user-level program cannot readily determine and probably cannot (at all) portably determine. der Mouse old: mcgill-vision!mouse new: mouse@larry.mcrcim.mcgill.edu