diff --git a/platform/core-impl/src/com/intellij/openapi/progress/impl/CoreProgressManager.java b/platform/core-impl/src/com/intellij/openapi/progress/impl/CoreProgressManager.java index 09460459428c..9db62b242327 100644 --- a/platform/core-impl/src/com/intellij/openapi/progress/impl/CoreProgressManager.java +++ b/platform/core-impl/src/com/intellij/openapi/progress/impl/CoreProgressManager.java @@ -28,10 +28,7 @@ import org.jetbrains.annotations.*; import javax.swing.*; import java.util.*; -import java.util.concurrent.Future; -import java.util.concurrent.RejectedExecutionException; -import java.util.concurrent.ScheduledFuture; -import java.util.concurrent.TimeUnit; +import java.util.concurrent.*; import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicReference; import java.util.concurrent.locks.LockSupport; @@ -736,7 +733,7 @@ public class CoreProgressManager extends ProgressManager implements Disposable { @ApiStatus.Internal public void suppressPrioritizing() { synchronized (myPrioritizationLock) { - if (++myDeprioritizations == 100) { + if (++myDeprioritizations == 100 + ForkJoinPool.getCommonPoolParallelism() * 2) { Attachment attachment = new Attachment("threadDump.txt", ThreadDumper.dumpThreadsToString()); attachment.setIncluded(true); LOG.error("A suspiciously high nesting of suppressPrioritizing, forgot to call restorePrioritizing?", attachment);