/// <summary>
        /// Moves the owner queues of a job forward. This means each queue is stepped to the job after this one.
        /// </summary>
        /// <param name="job">The job.</param>
        private void MoveToNextJob(Job job)
        {
            if (job is MasterJob)
            {
                this.queuesLock.Enter();
                try
                {
                    this.masterQueueJobs.Remove(job);
                }
                finally
                {
                    this.queuesLock.Exit();
                }
            }

            foreach (JobQueue owner in job.GetOwners())
            {
                owner.MoveNext();
            }
        }