0 The job queue, statuses and their actions
Moritz Bunkus edited this page 2016-02-24 21:30:35 +01:00

How the job queue works

Here's an explanation of how the job queue works, what the various statuses mean and what the available actions both in the context menu and in the »job queue« menu do.

(A) Status and context menu action »Start automatically«

Any job entered into the queue with status »start automatically« will be started automatically, but at most one job will be running simultaneously. This means if the queue is currently not running then the newly-added job will be started immediately. Otherwise it will be enqueued and run after all the other jobs in the queue with status »start automatically« have been completed.

Jobs will only have a status of »start automatically« if you either submit them from the merge tool with »start muxing« or if you select »start jobs automatically« from the context menu in the job queue tool.

(B) Status and context menu action »Start manually«

Jobs marked as »start manually« will remain in the queue but won't be started unless you, the user, tells the program to do just that. There are two ways for accomplishing this:

  1. Select a couple of jobs in the job queue tool, open the context menu and choose »start jobs automatically«. This will set their status to »start automatically« and they'll be processed as laid out in (A).
  2. Go to the job queue tool, open the »job queue« menu and select »start all pending jobs«. This changes the status of all jobs whose current status is »start manually« to »start automatically«. Then they're processed as laid out in (A).

(C) Context menu action »Start immediately«

This is not a job status per se, but it is an action available in the job queue's context menu. This starts the selected jobs immediately, no matter if there's a job running already. This allows the number of simultaneously running jobs to exceed 1.

Note that as long as at least one job is running no other jobs marked »start automatically« will be started. For example, if you have three jobs in the queue, one currently running, and two set to »stat automatically«. Now you select one of those two marked as »start automatically« and select »start jobs immediately«. This changes the queue to two jobs running, one job still in »start automatically«. Now when one of those running jobs finishes the programm will not start that other job that's still set to »start automatically« as it still has one job running. Only after that second runnig job has finished will the final pending job be started.

(D) Job queue menu action »Start all pending jobs«

This is described in section (B).

(E) Job queue menu actions »Stop job queue«

Choosing one of those two options in the »stop job queue« sub-menu causes all jobs set to »start automatically« to be changed to »start manually«. That way they won't get executed by the GUI unless you tell it to; see (B).

The difference between the two available options is how a potentially running job is handled. In case of »abort current job and stop immediately« the currently running job will be aborted, otherwise it will be left running. Note that aborthing the job will leave it in state »aborted by user«; it won't be re-started unless you tell the program so (via one of the the »start jobs …« context menu actions).

Categories: misc