Details
-
Suggestion
-
Resolution: Unresolved
-
Not Evaluated
-
None
-
None
-
None
Description
stdin/stdout handling of the parent process is nicely abstracted away with QProcess.
On the other hand, getting this right for the child process is quite error prone:
- reading blocks when stdin is opened using a file descriptor (QTBUG-92905)
- each read causes 1 F_GETFL and 2 F_SETFL fnctl calls
- writing is buffered when stdout is opened using a file handle, an explicit flush is necessary (
QTBUG-92906)
Attachments
Issue Links
- is required for
-
QTBUG-36238 qml tool console behavior
- Reported
- relates to
-
QTBUG-92905 QFile/pipe reading blocks when using a file descriptor instead of a handle
- Reported
-
QTBUG-92906 Unbuffered QFile buffers when opened using FILE* handle
- Closed
Gerrit Reviews
For Gerrit Dashboard: QTBUG-92907 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
342781,31 | Long live QStandardInput | dev | qt/qtbase | Status: DEFERRED | -1 | 0 |
349431,24 | Long live QConsoleIO | dev | qt/qtbase | Status: DEFERRED | 0 | 0 |