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

Side by Side Diff: base/task_scheduler/scheduler_service_thread_unittest.cc

Issue 2116163002: Add Lazy Creation and Thread Detachment Support in the Scheduler Worker Pool (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: CR Feedback Continuation Created 4 years, 5 months 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 unified diff | Download patch
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "base/task_scheduler/scheduler_service_thread.h" 5 #include "base/task_scheduler/scheduler_service_thread.h"
6 6
7 #include <memory> 7 #include <memory>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/bind_helpers.h" 10 #include "base/bind_helpers.h"
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
52 class TaskSchedulerServiceThreadTest : public testing::Test { 52 class TaskSchedulerServiceThreadTest : public testing::Test {
53 protected: 53 protected:
54 TaskSchedulerServiceThreadTest() : delayed_task_manager_(Bind(&DoNothing)) {} 54 TaskSchedulerServiceThreadTest() : delayed_task_manager_(Bind(&DoNothing)) {}
55 55
56 void SetUp() override { 56 void SetUp() override {
57 scheduler_worker_pool_ = SchedulerWorkerPoolImpl::Create( 57 scheduler_worker_pool_ = SchedulerWorkerPoolImpl::Create(
58 SchedulerWorkerPoolParams("TestWorkerPoolForSchedulerServiceThread", 58 SchedulerWorkerPoolParams("TestWorkerPoolForSchedulerServiceThread",
59 ThreadPriority::BACKGROUND, 59 ThreadPriority::BACKGROUND,
60 SchedulerWorkerPoolParams::IORestriction:: 60 SchedulerWorkerPoolParams::IORestriction::
61 DISALLOWED, 61 DISALLOWED,
62 1u), 62 1u,
63 TimeDelta::Max()),
63 Bind(&ReEnqueueSequenceCallback), &task_tracker_, 64 Bind(&ReEnqueueSequenceCallback), &task_tracker_,
64 &delayed_task_manager_); 65 &delayed_task_manager_);
65 ASSERT_TRUE(scheduler_worker_pool_); 66 ASSERT_TRUE(scheduler_worker_pool_);
66 service_thread_ = SchedulerServiceThread::Create( 67 service_thread_ = SchedulerServiceThread::Create(
67 &task_tracker_, &delayed_task_manager_); 68 &task_tracker_, &delayed_task_manager_);
68 ASSERT_TRUE(service_thread_); 69 ASSERT_TRUE(service_thread_);
69 } 70 }
70 71
71 void TearDown() override { 72 void TearDown() override {
72 scheduler_worker_pool_->JoinForTesting(); 73 scheduler_worker_pool_->JoinForTesting();
(...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after
178 179
179 // Now wait for the second task to be fired. 180 // Now wait for the second task to be fired.
180 event2.Wait(); 181 event2.Wait();
181 182
182 // Which should only have fired after |delay2| was expired. 183 // Which should only have fired after |delay2| was expired.
183 EXPECT_GE(TimeTicks::Now() - test_begin_time, delay2); 184 EXPECT_GE(TimeTicks::Now() - test_begin_time, delay2);
184 } 185 }
185 186
186 } // namespace internal 187 } // namespace internal
187 } // namespace base 188 } // namespace base
OLDNEW
« no previous file with comments | « no previous file | base/task_scheduler/scheduler_worker_pool_impl.h » ('j') | base/task_scheduler/scheduler_worker_pool_impl.h » ('J')

Powered by Google App Engine
This is Rietveld 408576698