Priority
Description
Instructs the system to determine when to run a managed task in conjunction with other tasks and how to handle
a conflict if one arises between them. Task priority can be used to
limit consumption of system resources (for example, CPU and memory usage), and to prevent interactive tasks from interfering with one
another. Task prioritization typically
involves two main aspects; under what conditions the task is allowed
to run, and how it should behave if such conditions are not met.
EXAMPLE: Task 1 must make sure that a particular window or
application stays in the foreground in order to send keystrokes to it.
If Task 2 were to run and focus an unrelated window, it would eventually
interfere with Task 1's ability to send keystrokes to the proper window,
thus failing one, or possibly both tasks.
To access the Priority
properties of a managed task, from Task Administrator's Tasks
view, right-click the desired task, and then select Go
to > Priority.
NOTE: A task must have at least
one trigger to run automatically; however, it is not a requirement.
Tasks that have no triggers assigned can still be run manually
from the Task Administrator by highlighting the task, and then selecting
Run.
Practical usage
Automate Desktop is capable of
executing numerous tasks simultaneously. However, you may want to set the
maximum number of simultaneously run tasks as specified in the
global priority options defaults to 50. On
the other hand, there are certain situations when a particular task may
need to run independent and uninterrupted from all other tasks. The Priority
feature allows you to set priority levels for each task to alleviate such
conflicts.
Parameters
Priority
type |
The
type of priority to set. Task Priority can be set for the following
conditions:- Always runs - The task is
free to operate alongside other tasks, and runs without checking
any priority conditions. However, this does not make it impervious
from being suspended, stopped or queued by another task that
has already begun with priorities that conflict with this
task. For example, if a task with priority settings Run alone has already started,
the task set to the option Always
runs will not immediately execute, but rather, it will
have to wait in a queue assuming the conflict action Hold task indefinitely is
selected. (This parameter is set by default)
- Limit number of simultaneous instances
of this task - Automate Desktop checks if running the current
task will cause the total number of running tasks with the
same name to exceed the specified value selected under the
option Max number of running
tasks. If so, Automate Desktop uses the selected priority conflict
action (explained below under If
condition is not met parameter).
- Limit number of simultaneous tasks
- Automate Desktop checks if running the current task will cause the
total number of running tasks to exceed the specified value
chosen under the Max number
of running tasks option. If so, Automate Desktop uses the selected
priority conflict action.
- Run alone - The task only
runs if there are no other tasks running. This is equivalent
to the priority condition Limit
number of simultaneous tasks with the total allowable
tasks set to 1.
|
Max
number of running tasks |
Specifies the maximum number of
running tasks. |
If
the condition is not met |
When
a task cannot run because its priority condition is not met, it
is either ignored and never run or placed into a queue of waiting
tasks. The queue is examined each time a running task ends, and
priority conditions of each task in the queue are reevaluated
to see which task can now be run. Available priority conflict
actions are as follows:- Hold task indefinitely -
The task is placed into the "waiting tasks" queue
until all other prioritized tasks have completed. Queued tasks
will run in the order that they were placed in the queue.
- Hold task then abort - The
task is placed into the "waiting tasks" queue and
waits for the amount of minutes specified. If the time elapses
before conditions change that allow the task to run, the task
is automatically removed from the queue and discarded. If
a 'Schedule Watcher' trigger initially launches the task,
it is rescheduled based on the scheduled trigger's
rescheduling properties.
- Hold task then interrupt all running
tasks - The task is placed into the "waiting tasks"
queue and waits for the amount of minutes specified. If the
time elapses before the change to allow the task to run, all
the tasks currently running on the system are forcibly stopped
(aborted), and the current task begins immediately thereafter.
When used in conjunction with the 'Run Alone' priority condition,
this provides a task the highest possible running authority.
- Interrupt all other running tasks
- All running tasks are interrupted and the current task begins
immediately.
- Interrupt all other running instances
of this task - All tasks with the same name as the
currently running task are interrupted and the current task
begins immediately.
- Don't run - The task does
not run at all. If a scheduled trigger is set to
launch the task, it is re-scheduled based on the trigger's
re-scheduling parameters.
|
Hold
duration |
Specifies the total number of minutes
to hold the task before other actions take place. |