Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2)

Unified Diff: pkg/analysis_server/lib/src/analysis_server.dart

Issue 2487003002: Use AnalysisDriverScheduler to schedule work across multiple AnalysisDriver(s). (Closed)
Patch Set: Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: pkg/analysis_server/lib/src/analysis_server.dart
diff --git a/pkg/analysis_server/lib/src/analysis_server.dart b/pkg/analysis_server/lib/src/analysis_server.dart
index 99f3724d6d46884b8ad1bb1a3c76a5fe56cbaaa6..5ec25adf336c8fa6db94dc6b02e640df21834285 100644
--- a/pkg/analysis_server/lib/src/analysis_server.dart
+++ b/pkg/analysis_server/lib/src/analysis_server.dart
@@ -317,7 +317,9 @@ class AnalysisServer {
*/
PubSummaryManager pubSummaryManager;
+ nd.PerformanceLog _analysisPerformanceLogger;
ByteStore byteStore;
+ nd.AnalysisDriverScheduler analysisDriverScheduler;
/**
* The set of the files that are currently priority.
@@ -363,10 +365,13 @@ class AnalysisServer {
options.finerGrainedInvalidation;
defaultContextOptions.generateImplicitErrors = false;
operationQueue = new ServerOperationQueue();
+ _analysisPerformanceLogger = new nd.PerformanceLog(io.stdout);
byteStore = new MemoryCachingByteStore(
new FileByteStore(
resourceProvider.getStateLocation('.analysis-driver')),
- 1024);
+ 1024 * 32);
+ analysisDriverScheduler = new nd.AnalysisDriverScheduler(_analysisPerformanceLogger);
+ analysisDriverScheduler.start();
if (useSingleContextManager) {
contextManager = new SingleContextManager(resourceProvider, sdkManager,
packageResolverProvider, analyzedFilesGlobs, defaultContextOptions);
@@ -1748,7 +1753,8 @@ class ServerContextManagerCallbacks extends ContextManagerCallbacks {
context.dispose();
}
nd.AnalysisDriver analysisDriver = new nd.AnalysisDriver(
- new nd.PerformanceLog(io.stdout),
+ analysisServer.analysisDriverScheduler,
+ analysisServer._analysisPerformanceLogger,
resourceProvider,
analysisServer.byteStore,
analysisServer.fileContentOverlay,
« no previous file with comments | « no previous file | pkg/analyzer/lib/src/dart/analysis/driver.dart » ('j') | pkg/analyzer/lib/src/dart/analysis/driver.dart » ('J')

Powered by Google App Engine
This is Rietveld 408576698