Subgroup: Task
Class: QgsTaskManager¶
-
class
qgis.core.
QgsTaskManager
(parent: QObject = None)¶ Bases:
PyQt5.QtCore.QObject
Constructor for QgsTaskManager.
Parameters: parent – parent QObject
Task manager for managing a set of long-running QgsTask tasks. This class can be created directly,
or accessed via
QgsApplication.taskManager()
New in version 3.0: Methods
activeTasks
Returns a list of the active (queued or running) tasks. addTask
Adds a task to the manager. cancelAll
Instructs all tasks tracked by the manager to terminate. childEvent
connectNotify
count
Returns the number of tasks tracked by the manager. countActiveTasks
Returns the number of active (queued or running) tasks. customEvent
dependenciesSatisfied
Returns true if all dependencies for the specified task are satisfied dependentLayers
Returns a list of layers on which as task is dependent. disconnectNotify
isSignalConnected
receivers
sender
senderSignalIndex
task
Returns the task with matching ID. taskId
Returns the unique task ID corresponding to a task managed by the class. tasks
Returns all tasks tracked by the manager. tasksDependentOnLayer
Returns a list of tasks which depend on a layer. timerEvent
triggerTask
Triggers a task, e. Signals
allTasksFinished
Emitted when all tasks are complete countActiveTasksChanged
Emitted when the number of active tasks changes finalTaskProgressChanged
Will be emitted when only a single task remains to complete and that task has reported a progress change progressChanged
Will be emitted when a task reports a progress change statusChanged
Will be emitted when a task reports a status change taskAboutToBeDeleted
Emitted when a task is about to be deleted taskAdded
Emitted when a new task has been added to the manager taskTriggered
Emitted when a task
is triggered.Attributes
-
class
TaskDefinition
(task: QgsTask, dependentTasks: object = QgsTaskList())¶ Bases:
sip.wrapper
Constructor for TaskDefinition. Ownership of the task is not transferred to the definition, but will be transferred to a QgsTaskManager.
QgsTaskManager.TaskDefinition(QgsTaskManager.TaskDefinition)
-
dependentTasks
¶
-
task
¶
-
-
activeTasks
(self) → List[QgsTask]¶ Returns a list of the active (queued or running) tasks.
See also
-
addTask
(self, task: QgsTask, priority: int = 0) → int¶ Adds a task to the manager. Ownership of the task is transferred to the manager, and the task manager will be responsible for starting the task. The priority argument can be used to control the run queue’s order of execution, with larger numbers taking precedence over lower priority numbers.
Returns: unique task ID addTask(self, task: QgsTaskManager.TaskDefinition, priority: int = 0) -> int Adds a task to the manager, using a full task definition (including dependency handling). Ownership of the task is transferred to the manager, and the task manager will be responsible for starting the task. The priority argument can be used to control the run queue’s order of execution, with larger numbers taking precedence over lower priority numbers.
Returns: unique task ID
-
allTasksFinished
¶ Emitted when all tasks are complete
See also
countActiveTasksChanged()
[signal]
-
cancelAll
(self)¶ Instructs all tasks tracked by the manager to terminate. Individual tasks may take some time to cancel, or may totally ignore this instruction. Calling this does not block but will instead signal the tasks to cancel and then return immediately.
-
childEvent
()¶
-
connectNotify
()¶
-
count
(self) → int¶ Returns the number of tasks tracked by the manager.
-
countActiveTasks
(self) → int¶ Returns the number of active (queued or running) tasks.
See also
See also
-
countActiveTasksChanged
¶ Emitted when the number of active tasks changes
See also
countActiveTasks()
[signal]
-
customEvent
()¶
-
dependenciesSatisfied
(self, taskId: int) → bool¶ Returns true if all dependencies for the specified task are satisfied
-
dependentLayers
(self, taskId: int) → List[QgsMapLayer]¶ Returns a list of layers on which as task is dependent. The task will automatically be canceled if any of these layers are above to be removed.
Parameters: taskId – task ID Returns: list of layers See also
-
disconnectNotify
()¶
-
finalTaskProgressChanged
¶ Will be emitted when only a single task remains to complete and that task has reported a progress change
Parameters: progress – percent of progress, from 0.0 - 100.0 [signal]
-
isSignalConnected
()¶
-
progressChanged
¶ Will be emitted when a task reports a progress change
Parameters: - taskId – ID of task
- progress – percent of progress, from 0.0 - 100.0 [signal]
-
receivers
()¶
-
sender
()¶
-
senderSignalIndex
()¶
-
statusChanged
¶ Will be emitted when a task reports a status change
Parameters: - taskId – ID of task
- status – new task status [signal]
-
task
(self, id: int) → QgsTask¶ Returns the task with matching ID.
Parameters: id – task ID Returns: task if found, or None
-
taskAboutToBeDeleted
¶ Emitted when a task is about to be deleted
Parameters: taskId – ID of task [signal]
-
taskAdded
¶ Emitted when a new task has been added to the manager
Parameters: taskId – ID of task [signal]
-
taskId
(self, task: QgsTask) → int¶ Returns the unique task ID corresponding to a task managed by the class.
Parameters: task – task to find Returns: task ID, or -1 if task not found
-
taskTriggered
¶ Emitted when a
task
is triggered. This occurs when a user clicks on the task from the QGIS GUI, and can be used to show detailed progress reports or re-open a related dialog.See also
triggerTask()
[signal]
-
tasks
(self) → List[QgsTask]¶ Returns all tasks tracked by the manager.
-
tasksDependentOnLayer
(self, layer: QgsMapLayer) → List[QgsTask]¶ Returns a list of tasks which depend on a layer.
See also
-
timerEvent
()¶
-
triggerTask
(self, task: QgsTask)¶ Triggers a task, e.g. as a result of a GUI interaction.
See also
-
class