Index: base/test/launcher/test_launcher.h |
diff --git a/base/test/launcher/test_launcher.h b/base/test/launcher/test_launcher.h |
index 38980cfd60ac3355f2aff06acacb8e8abc9bd0f8..3f6bbaa5f9a41fbad221693e6d5cf7207567c349 100644 |
--- a/base/test/launcher/test_launcher.h |
+++ b/base/test/launcher/test_launcher.h |
@@ -32,6 +32,7 @@ class CommandLine; |
struct LaunchOptions; |
class SequencedWorkerPoolOwner; |
class TestLauncher; |
+class Thread; |
// Constants for GTest command-line flags. |
extern const char kGTestFilterFlag[]; |
@@ -165,6 +166,10 @@ class TestLauncher { |
// Called by the delay timer when no output was made for a while. |
void OnOutputTimeout(); |
+ // Returns the TaskRunner to be used to launch child test processes. This |
+ // TaskRunner will have TaskShutdownBehavior::BLOCK_SHUTDOWN semantics. |
+ scoped_refptr<TaskRunner> GetTaskRunner(); |
+ |
// Make sure we don't accidentally call the wrong methods e.g. on the worker |
// pool thread. With lots of callbacks used this is non-trivial. |
// Should be the first member so that it's destroyed last: when destroying |
@@ -227,8 +232,10 @@ class TestLauncher { |
// Number of jobs to run in parallel. |
size_t parallel_jobs_; |
- // Worker pool used to launch processes in parallel. |
+ // Worker pool used to launch processes in parallel (|worker_thread_| is used |
+ // instead if |parallel_jobs == 1|). |
std::unique_ptr<SequencedWorkerPoolOwner> worker_pool_owner_; |
+ std::unique_ptr<Thread> worker_thread_; |
DISALLOW_COPY_AND_ASSIGN(TestLauncher); |
}; |