diff --git a/bundles/org.eclipse.core.jobs/META-INF/MANIFEST.MF b/bundles/org.eclipse.core.jobs/META-INF/MANIFEST.MF
index c17d1be..63fd415 100644
--- a/bundles/org.eclipse.core.jobs/META-INF/MANIFEST.MF
+++ b/bundles/org.eclipse.core.jobs/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
 Bundle-ManifestVersion: 2
 Bundle-Name: %pluginName
 Bundle-SymbolicName: org.eclipse.core.jobs; singleton:=true
-Bundle-Version: 3.12.100.qualifier
+Bundle-Version: 3.12.200.qualifier
 Bundle-Vendor: %providerName
 Bundle-Localization: plugin
 Export-Package: org.eclipse.core.internal.jobs;x-internal:=true,
diff --git a/bundles/org.eclipse.core.jobs/pom.xml b/bundles/org.eclipse.core.jobs/pom.xml
index 443b0d6..d8119be 100644
--- a/bundles/org.eclipse.core.jobs/pom.xml
+++ b/bundles/org.eclipse.core.jobs/pom.xml
@@ -20,7 +20,7 @@
   </parent>
   <groupId>org.eclipse.core</groupId>
   <artifactId>org.eclipse.core.jobs</artifactId>
-  <version>3.12.100-SNAPSHOT</version>
+  <version>3.12.200-SNAPSHOT</version>
   <packaging>eclipse-plugin</packaging>
   <properties>
     <code.ignoredWarnings>-warn:-deprecation,raw,unchecked</code.ignoredWarnings>
diff --git a/bundles/org.eclipse.core.jobs/src/org/eclipse/core/internal/jobs/Worker.java b/bundles/org.eclipse.core.jobs/src/org/eclipse/core/internal/jobs/Worker.java
index 0911648..3a73d1c 100644
--- a/bundles/org.eclipse.core.jobs/src/org/eclipse/core/internal/jobs/Worker.java
+++ b/bundles/org.eclipse.core.jobs/src/org/eclipse/core/internal/jobs/Worker.java
@@ -53,7 +53,7 @@
 
 	@Override
 	public void run() {
-		setPriority(Thread.NORM_PRIORITY);
+		setNormPriority();
 		try {
 			while ((currentJob = pool.startJob(this)) != null) {
 				IStatus result = Status.OK_STATUS;
@@ -84,7 +84,7 @@
 					currentJob = null;
 					setName(generalName);
 					// reset thread priority in case job changed it
-					setPriority(Thread.NORM_PRIORITY);
+					setNormPriority();
 				}
 			}
 		} catch (Throwable t) {
@@ -95,6 +95,13 @@
 		}
 	}
 
+	private void setNormPriority() {
+		if (getPriority() != Thread.NORM_PRIORITY) {
+			// Setting priority on some platforms may cause high overhead
+			setPriority(Thread.NORM_PRIORITY);
+		}
+	}
+
 	private String getJobName() {
 		String name = currentJob.getName();
 		if (name == null || name.trim().isEmpty()) {
