Index: cc/resources/raster_worker_pool.cc |
diff --git a/cc/resources/raster_worker_pool.cc b/cc/resources/raster_worker_pool.cc |
index 06fd18e62e0ec2bdc9d440ee0ae6eb925c867ef4..ee11665012282557bc5f1618b2ca203f839d45c2 100644 |
--- a/cc/resources/raster_worker_pool.cc |
+++ b/cc/resources/raster_worker_pool.cc |
@@ -319,7 +319,9 @@ class RasterFinishedWorkerPoolTaskImpl : public internal::WorkerPoolTask { |
DISALLOW_COPY_AND_ASSIGN(RasterFinishedWorkerPoolTaskImpl); |
}; |
-const char* kWorkerThreadNamePrefix = "CompositorRaster"; |
+const int kDefaultNumRasterThreads = 1; |
+ |
+int g_num_raster_threads = 0; |
} // namespace |
@@ -461,10 +463,24 @@ RasterWorkerPool::Task RasterWorkerPool::CreateImageDecodeTask( |
reply)); |
} |
-RasterWorkerPool::RasterWorkerPool(ResourceProvider* resource_provider, |
- size_t num_threads) |
- : WorkerPool(num_threads, kWorkerThreadNamePrefix), |
- client_(NULL), |
+// static |
+void RasterWorkerPool::SetNumRasterThreads(int num_threads) { |
+ DCHECK_LT(0, num_threads); |
+ DCHECK_EQ(0, g_num_raster_threads); |
+ |
+ g_num_raster_threads = num_threads; |
+} |
+ |
+// static |
+int WorkerPool::GetNumRasterThreads() { |
+ if (!g_num_raster_threads) |
+ g_num_raster_threads = kDefaultNumRasterThreads; |
+ |
+ return g_num_raster_threads; |
+} |
+ |
+RasterWorkerPool::RasterWorkerPool(ResourceProvider* resource_provider) |
+ : client_(NULL), |
resource_provider_(resource_provider), |
weak_ptr_factory_(this) { |
} |