Class: QgsBlockingProcess¶
- class qgis.core.QgsBlockingProcess¶
Bases:
PyQt5.QtCore.QObject
A thread safe class for performing blocking (sync) execution of external processes.
This class should be used whenever a blocking process run is required. Unlike implementations which rely on QApplication.processEvents() or creation of a QEventLoop, this class is completely thread safe and can be used on either the main thread or background threads without issue.
Not available on some platforms (e.g. iOS) https://lists.qt-project.org/pipermail/development/2015-July/022205.html
New in version 3.18.
QgsBlockingProcess(program: str, arguments: Iterable[str]) Constructor for the given
program
, with the specified list ofarguments
.After construction, call
run()
to start the process execution.Methods
After a call to
run()
, returns the process' exit status.After a call to
run()
, returns the process' reported error.Runs the process, and blocks until execution finishes.
Sets a
handler
function to call whenever content is written by the process to stderr.Sets a handler function to call whenever content is written by the process to stdout.
- childEvent(self, QChildEvent)¶
- connectNotify(self, QMetaMethod)¶
- customEvent(self, QEvent)¶
- disconnectNotify(self, QMetaMethod)¶
- exitStatus(self) QProcess.ExitStatus ¶
After a call to
run()
, returns the process’ exit status.- Return type:
QProcess.ExitStatus
- isSignalConnected(self, QMetaMethod) bool ¶
- processError(self) QProcess.ProcessError ¶
After a call to
run()
, returns the process’ reported error.Returns QProcess.UnknownError if no error occurred.
- Return type:
QProcess.ProcessError
- receivers(self, PYQT_SIGNAL) int ¶
- run(self, feedback: QgsFeedback = None) int ¶
Runs the process, and blocks until execution finishes.
The optional
feedback
argument can be used to specify a feedback object for cancellation/process termination.After execution completes, the process’ result code will be returned.
- Parameters:
feedback (
QgsFeedback
= None) –- Return type:
int
- sender(self) QObject ¶
- senderSignalIndex(self) int ¶
- setStdErrHandler(self, Callable[..., None])¶
Sets a
handler
function to call whenever content is written by the process to stderr.
- setStdOutHandler(self, Callable[..., None])¶
Sets a handler function to call whenever content is written by the process to stdout.
- timerEvent(self, QTimerEvent)¶