Minor cleanup
diff --git a/bundles/org.eclipse.core.jobs/src/org/eclipse/core/internal/jobs/InternalJobGroup.java b/bundles/org.eclipse.core.jobs/src/org/eclipse/core/internal/jobs/InternalJobGroup.java
index a0794d9..afb6b28 100644
--- a/bundles/org.eclipse.core.jobs/src/org/eclipse/core/internal/jobs/InternalJobGroup.java
+++ b/bundles/org.eclipse.core.jobs/src/org/eclipse/core/internal/jobs/InternalJobGroup.java
@@ -32,7 +32,8 @@
* This lock will be held while performing state changes on this job group. It is
* also used as a notifier to wake up the threads waiting for this job group to complete.
*
- * See also the lock ordering protocol explanation in JobManager's documentation.
+ * External code is never called while holding this lock, thus removing the hold and wait
+ * condition necessary for deadlock.
*
* @GuardedBy("itself")
*/
@@ -181,7 +182,7 @@
//make sure this job group is running
if (getState() == JobGroup.NONE && getActiveJobsCount() > 0) {
synchronized (jobGroupStateLock) {
- startJobGroup();
+ state = JobGroup.ACTIVE;
jobGroupStateLock.notifyAll();
}
}
@@ -198,17 +199,6 @@
}
/**
- * Called by the JobManager to notify the group when the first job belonging
- * to the group is scheduled to run. Must be called from JobManager#updateJobGroup.
- *
- * @GuardedBy("JobManager.lock")
- * @GuardedBy("jobGroupStateLock")
- */
- final void startJobGroup() {
- state = JobGroup.ACTIVE;
- }
-
- /**
* Called by the JobManager to signify that the group is getting canceled.
* Must be called from JobManager#updateJobGroup.
*