[Interest] QProcess: child read from stdin - no data received?
Joerg Bornemann
joerg.bornemann at nokia.com
Mon May 14 12:32:13 CEST 2012
On 14/05/2012 10:06, ext Thiago Macieira wrote:
> The Windows side is very, very complex. Take a look at the
> QProcessPrivate::waitForReadyRead function: it actually does a busy-wait
> trying to read from the pipe and sleeps. It's horrible.
In Qt5 QProcess (on Windows) creates named pipes with overlapped I/O
(async I/O) enabled. These handles are passed to the child process and
could be used to get notified whenever a read operation on stdin
completes (see QWinOverlappedIoNotifier).
Note that this will only work if the parent process is a Qt5 process (or
creates the same kind of handles). Oh and its of obviously
platform-dependent.
BR,
Jörg
More information about the Interest
mailing list