Class: QgsTaskWithSerialSubTasks¶
- class qgis.core.QgsTaskWithSerialSubTasks¶
Bases:
QgsTask
Task that is composed of sub-tasks to be executed in a serial way, which may be useful for example to add several layers in a single target dataset which does not support concurrent updates.
Added in version 3.36.
QgsTaskWithSerialSubTasks(desc: Optional[str] = ‘’) Constructor
Methods
Add a subtask and transfer its ownership
If the task is managed by a
QgsTaskManager
, this will be called after the task has finished (whether through successful completion or via early termination).Will return
True
if task should terminate ASAP.- rtype:
bool
Sets the task's current progress.
- addSubTask(self, subTask: QgsTask | None)¶
Add a subtask and transfer its ownership
The parent task must be added to a
QgsTaskManager
for subtasks to be utilized. Subtasks should not be added manually to aQgsTaskManager
, rather, only the parent task should be added to the manager.For now, subtasks can NOT be nested.
- Parameters:
subTask (Optional[QgsTask])
- cancel(self)¶
- childEvent(self, a0: QChildEvent | None)¶
- connectNotify(self, signal: QMetaMethod)¶
- customEvent(self, a0: QEvent | None)¶
- disconnectNotify(self, signal: QMetaMethod)¶
- finished(self, result: bool)¶
If the task is managed by a
QgsTaskManager
, this will be called after the task has finished (whether through successful completion or via early termination). The result argument reflects whether the task was successfully completed or not. This method is always called from the main thread, so it is safe to create widgets and perform other operations which require the main thread. However, the GUI will be blocked for the duration of this method so tasks should avoid performing any lengthy operations here.
- isCanceled(self) bool ¶
Will return
True
if task should terminate ASAP. If the task reports the CanCancel flag, then derived classes’run()
methods should periodically check this and terminate in a safe manner.
- isSignalConnected(self, signal: QMetaMethod) bool ¶
- receivers(self, signal: PYQT_SIGNAL) int ¶
- run(self) bool ¶
- Return type:
bool
- sender(self) QObject | None ¶
- senderSignalIndex(self) int ¶
- setProgress(self, progress: float)¶
Sets the task’s current progress. The derived class should call this method whenever the task wants to update its progress. Calling will automatically emit the progressChanged signal.
- Parameters:
progress – percent of progress, from 0.0 - 100.0
- timerEvent(self, a0: QTimerEvent | None)¶