deprecate suspend/resume (bug 79698)
diff --git a/bundles/org.eclipse.core.runtime/src/org/eclipse/core/internal/jobs/JobManager.java b/bundles/org.eclipse.core.runtime/src/org/eclipse/core/internal/jobs/JobManager.java
index 672d36f..c36fac8 100644
--- a/bundles/org.eclipse.core.runtime/src/org/eclipse/core/internal/jobs/JobManager.java
+++ b/bundles/org.eclipse.core.runtime/src/org/eclipse/core/internal/jobs/JobManager.java
@@ -777,7 +777,8 @@
}
}
- /* (non-Javadoc)
+ /** (non-Javadoc)
+ * @deprecated this method should not be used
* @see org.eclipse.core.runtime.jobs.IJobManager#resume(org.eclipse.core.runtime.jobs.ISchedulingRule)
*/
public final void resume(ISchedulingRule rule) {
@@ -1024,7 +1025,8 @@
}
}
- /* (non-Javadoc)
+ /** (non-Javadoc)
+ * @deprecated this method should not be used
* @see org.eclipse.core.runtime.jobs.IJobManager#suspend(org.eclipse.core.runtime.jobs.ISchedulingRule, org.eclipse.core.runtime.IProgressMonitor)
*/
public final void suspend(ISchedulingRule rule, IProgressMonitor monitor) {
diff --git a/bundles/org.eclipse.core.runtime/src/org/eclipse/core/runtime/jobs/IJobManager.java b/bundles/org.eclipse.core.runtime/src/org/eclipse/core/runtime/jobs/IJobManager.java
index 3dab287..cb043f5 100644
--- a/bundles/org.eclipse.core.runtime/src/org/eclipse/core/runtime/jobs/IJobManager.java
+++ b/bundles/org.eclipse.core.runtime/src/org/eclipse/core/runtime/jobs/IJobManager.java
@@ -221,6 +221,10 @@
* thread also owns the rule at the time this method is called, then the rule will
* not be resumed until all threads have released the rule.
*
+ * @deprecated This method is not safe and should not be used.
+ * Suspending a scheduling rule violates the thread safety
+ * of clients that use scheduling rules as a mutual exclusion mechanism,
+ * and can result in concurrency problems in all clients that use the suspended rule.
* @see #suspend(ISchedulingRule, IProgressMonitor)
*/
public void resume(ISchedulingRule rule);
@@ -309,6 +313,10 @@
* execution soon afterwards. Deadlock will result if the thread responsible
* for resuming the rule attempts to join a suspended job.
*
+ * @deprecated This method is not safe and should not be used.
+ * Suspending a scheduling rule violates the thread safety
+ * of clients that use scheduling rules as a mutual exclusion mechanism,
+ * and can result in concurrency problems in all clients that use the suspended rule.
* @param rule The scheduling rule to suspend. Must not be <code>null</code>.
* @param monitor a progress monitor, or <code>null</code> if progress
* reporting is not desired