Bug 54445 [Jobs] Duplicate search marker jobs
Build 20040310 While doing operations, I got locked while a build was running. Looking at the progress, I observed there were 3 instances of a searching marker job in the queue, awaiting to proceed. The scheduling of these search jobs should be smart enough to avoid stepping on itself. If it is already scheduled, it shouldn't reschedule one, or if doing so, it should cancel pre-enqueued one.
bundles/org.eclipse.ui.ide/src/org/eclipse/ui/views/markers/internal/RestartableJob.java
} else {
				if (currentMonitor.isCanceled()) {
					restartNeeded = true;
				}
			}
		}
	}
	
	/**
	 * Schedule theJob using the progress service if there
	 * is one.
	 */
	private void scheduleInService() {
		if(progressService == null)
			theJob.schedule();
		else
			progressService.schedule(theJob,0,true);
	}
	/**
	 * Cancels the job. If the job is currently running, it will be
	 * terminated as soon as possible.
	 */
	public void cancel() {
		synchronized(lock) {
			theJob.cancel();
			restartNeeded = false;
		}
	}
}