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)¶
-