On Thu, 28 Aug 2003 08:46:21 -0400 (EDT) Alan Cox <alan@xxxxxxxxxx> wrote: > > Just keep in mind that pipes are not asynchronous in Linux in > > applications > > They are asynchronous. popen is just a wrapper that does the fork/exec > and fd set up work for you, pclose is fclose plus waiting for the child > to exit (which is kind of synchronous and catches people out now and then) > > > started via popen(). So, if the client process wants to read from, say, > > stdin, that is OK. But you cannot use SIGIO on stdin. You will need to > > do > > pipes support SIGIO in modern Linux, you may need to unmask it and turn > FASYNC on. My experience with this is the 2.4.13 kernel. So it would have to be newer than that. I did see a patch that added this to pipes, but I did not use it. I changed the application (and grumbled a bit). As to configuring it to do so, this we already do with keyboards and various network sockets. Only stdin (the default one the child gets when started that is connected to the parent) on pipes did not work. I will check out how the newer kernels fare. -- +····························+·······························+ · Roger Oberholtzer · E-mail: roger@xxxxxx · · OPQ Systems AB · WWW: http://www.opq.se/ · · Erik Dahlbergsgatan 41-43 · Phone: Int + 46 8 314223 · · 115 34 Stockholm · Mobile: Int + 46 733 621657 · · Sweden · Fax: Int + 46 8 302602 · +····························+·······························+