Hello,
As far as I understand one doesn't have to call QProcess::waitForStarted()
after
QProcess::start(); process will start (or not) regardless of whether that
method
is called. Correct?
If so, what exactly does it mean if waitForStarted(x) returns false because of
a
timeout error? Does that mean the process could still end up being ready, i.e.
could one do something like this?
job->start();
if (!job->waitForStarted(10) && job->error() == QProcess::Timedout)
qWarning() << "this isn't instantaneous";
if (!job->waitForStarted(600) && job->error() == QProcess::Timedout)
qWarning() << "maybe get some coffee";
if (!job->waitForStarted(aVeryLongTime) && job->error() == QProcess::Timedout)
qCritical() << "better call the underTaker!";
Or should any false return from waitForStarted() be taken as a definitive error
that won't be recovered from?
FWIW I have already seen crashes occur when a timeout error is handled as a
hard
error (emitResult() called which apparently leads to deleting the QProcess
instance without disconnecting its slots first).
Thanks,
R.
_______________________________________________
Interest mailing list
[email protected]
http://lists.qt-project.org/mailman/listinfo/interest