Opened 19 years ago

Closed 19 years ago

Last modified 19 years ago

#5 closed enhancement (fixed)

Implement the QProcess class

Reported by: dmik Owned by: dmik
Priority: high Milestone: qt-os2-3.3.1-rc07
Component: kernel Version:
Severity: normal Keywords: QProcess
Cc:

Description

Many "real-world" Qt applications want to launch child processes. In order to have them ported to OS/2 we need to implement the QProcess class asap.

Change History (5)

comment:1 by dmik, 19 years ago

Status: newassigned

comment:2 by dmik, 19 years ago

Severity: normalenhancement

comment:3 by dmik, 19 years ago

Milestone: qt-os2-3.3.1-rc07

comment:4 by anonymous, 19 years ago

Resolution: fixed
Status: assignedclosed

The OS/2 implementation of QProcess is done.

For now, I use a 100ms window timer to poll stdout and stderr pipes of the child process and to check for its termination, just for simplicity (btw, the Win32 version does the same). But it's a fact, that in OS/2 we have a better solution to deal with pipes: DosSetNPipeSem. It allows us to create a single dedicated thread per all QProcess instances (i.e. per all child processes) that will monitor data arrival, which, in turn, will lead to more smooth readyReadStdout() and readyReadStderr() signal notifications. To monitor the process termination, we can also use a single thread that will call DosWaitChild() to wait for all child processes.

Probably, this approach will be implemented later, depending on what experience we get with the current implementation.

comment:5 by dmik, 19 years ago

It was me who closed this ticket :)

Note: See TracTickets for help on using tickets.