aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/concurrent/AbstractQueueVisitor.java
diff options
context:
space:
mode:
authorGravatar Googler <noreply@google.com>2016-11-28 21:54:43 +0000
committerGravatar Irina Iancu <elenairina@google.com>2016-11-29 08:07:08 +0000
commit2b5038831c2514f65841ce4e40f8e4648250bf01 (patch)
tree7f3cda740abdad84307803c3fe5243697f6f3479 /src/main/java/com/google/devtools/build/lib/concurrent/AbstractQueueVisitor.java
parent47f48d2d500e5aa58fbbea8f163067653b0127f1 (diff)
Update ParallelSkyQueryUtils to use QuiescingExecutor instead of ForkJoinPool
for concurrent visitations. During BFS visitation of rdeps and rbuildfiles, it uses a centralized pool (backed by a LinkedBlockingQueue) to store all pending visits, and a periodically running scheduler to schedule tasks for each pending visit. -- MOS_MIGRATED_REVID=140398162
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/concurrent/AbstractQueueVisitor.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/concurrent/AbstractQueueVisitor.java5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/concurrent/AbstractQueueVisitor.java b/src/main/java/com/google/devtools/build/lib/concurrent/AbstractQueueVisitor.java
index 01cdca1d3e..45d1c56c15 100644
--- a/src/main/java/com/google/devtools/build/lib/concurrent/AbstractQueueVisitor.java
+++ b/src/main/java/com/google/devtools/build/lib/concurrent/AbstractQueueVisitor.java
@@ -385,6 +385,11 @@ public class AbstractQueueVisitor implements QuiescingExecutor {
}
}
+ @Override
+ public long getRemainingTasksCount() {
+ return remainingTasks.get();
+ }
+
/**
* Subclasses may override this to make dynamic decisions about whether to run tasks
* asynchronously versus in-thread.