summaryrefslogtreecommitdiffstats
path: root/src/corelib/io/qprocess_p.h
diff options
context:
space:
mode:
authorJoerg Bornemann <joerg.bornemann@nokia.com>2012-01-16 12:02:47 +0100
committerQt by Nokia <qt-info@nokia.com>2012-01-26 18:45:14 +0100
commitdcdab683d6bfb6b0ad81b5903236ae70a71246e4 (patch)
treefd5767cb3a56b5361290360fc6e254c77f3a4710 /src/corelib/io/qprocess_p.h
parent9efbc9f60a511e902d3f8b368296212b43222f52 (diff)
QProcess/Win: use asynchronous I/O for reading stdout and stderr
This saves us from using the 100 ms polling timer to read process output. Task-number: QTBUG-23012 Change-Id: I3f9398d7a4d30826d2d89ac04bd2fd031500ff57 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Diffstat (limited to 'src/corelib/io/qprocess_p.h')
-rw-r--r--src/corelib/io/qprocess_p.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/corelib/io/qprocess_p.h b/src/corelib/io/qprocess_p.h
index a0599564db..bd9d75fa8c 100644
--- a/src/corelib/io/qprocess_p.h
+++ b/src/corelib/io/qprocess_p.h
@@ -74,6 +74,7 @@ typedef int Q_PIPE;
QT_BEGIN_NAMESPACE
class QSocketNotifier;
+class QWindowsPipeReader;
class QWindowsPipeWriter;
class QWinEventNotifier;
class QTimer;
@@ -291,14 +292,19 @@ public:
Q_PIPE childStartedPipe[2];
Q_PIPE deathPipe[2];
void destroyPipe(Q_PIPE pipe[2]);
+ void destroyChannel(Channel *channel);
QSocketNotifier *startupSocketNotifier;
QSocketNotifier *deathNotifier;
+#ifdef Q_OS_WIN
// the wonderful windows notifier
QTimer *notifier;
+ QWindowsPipeReader *stdoutReader;
+ QWindowsPipeReader *stderrReader;
QWindowsPipeWriter *pipeWriter;
QWinEventNotifier *processFinishedNotifier;
+#endif
void startProcess();
#if defined(Q_OS_UNIX) && !defined(Q_OS_SYMBIAN)