Prioritized running of Multiple Jobs

Question:

Can multiple jobs be scheduled to run simultaneously with different priorities?

Answer:

Any number of jobs - the number is only limited by CPU and memory - can be run simultaneously and - if they have been configured to do so - be run in multiple processes.

For example: you could run one database statement per job and let these jobs run simultaneously; or you could run a maximum of e.g. 10 simultaneous processes of a standard job that handles any database statement or executable file. In the second case an order is assigned to the job that contains the sql statement or filename in its payload (see answer: Concepts for jobs, job chains and orders).

Jobs can be configured to start with priorities by <job priority="..."/>. Use of priorities is operating system dependent, see priorities. Operating system priorities have no effect on database driven jobs that spend their lifetime in the database (server).

In addition, process classes can be assigned to jobs in order to limit the number of parallel tasks for a specified process class. If all tasks are running then a job will wait for the next free task and therefore be serialized.