Index: components/rlz/rlz_tracker.cc |
diff --git a/components/rlz/rlz_tracker.cc b/components/rlz/rlz_tracker.cc |
index 4a1abea602c943e19f2eae90865317410a6aa05f..9ecc535a4e331bfc5327cbed8685ec8a8a3602cd 100644 |
--- a/components/rlz/rlz_tracker.cc |
+++ b/components/rlz/rlz_tracker.cc |
@@ -13,9 +13,12 @@ |
#include "base/bind.h" |
#include "base/message_loop/message_loop.h" |
+#include "base/sequenced_task_runner.h" |
#include "base/strings/string_util.h" |
#include "base/strings/stringprintf.h" |
#include "base/strings/utf_string_conversions.h" |
+#include "base/task_scheduler/post_task.h" |
+#include "base/task_scheduler/task_traits.h" |
#include "base/trace_event/trace_event.h" |
#include "build/build_config.h" |
#include "components/rlz/rlz_tracker_delegate.h" |
@@ -165,8 +168,10 @@ RLZTracker::RLZTracker() |
omnibox_used_(false), |
homepage_used_(false), |
app_list_used_(false), |
- min_init_delay_(kMinInitDelay) { |
-} |
+ min_init_delay_(kMinInitDelay), |
+ task_runner_(base::CreateSequencedTaskRunnerWithTraits( |
+ {base::TaskShutdownBehavior::SKIP_ON_SHUTDOWN, |
+ base::WithBaseSyncPrimitives()})) {} |
gab
2017/07/17 16:44:20
base::TaskPriority::BACKGROUND? (i.e. RLZ is a ser
Roger Tawa OOO till Jul 10th
2017/07/17 19:19:36
Done.
|
RLZTracker::~RLZTracker() { |
} |
@@ -186,7 +191,6 @@ void RLZTracker::SetDelegate(std::unique_ptr<RLZTrackerDelegate> delegate) { |
DCHECK(delegate); |
DCHECK(!delegate_); |
delegate_ = std::move(delegate); |
- worker_pool_token_ = delegate_->GetBlockingPool()->GetSequenceToken(); |
} |
// static |
@@ -264,9 +268,9 @@ void RLZTracker::ScheduleDelayedInit(base::TimeDelta delay) { |
DCHECK(delegate_) << "RLZTracker used before initialization"; |
// The RLZTracker is a singleton object that outlives any runnable tasks |
// that will be queued up. |
- delegate_->GetBlockingPool()->PostDelayedSequencedWorkerTask( |
- worker_pool_token_, FROM_HERE, |
- base::Bind(&RLZTracker::DelayedInit, base::Unretained(this)), delay); |
+ task_runner_->PostDelayedTask( |
+ FROM_HERE, base::Bind(&RLZTracker::DelayedInit, base::Unretained(this)), |
+ delay); |
} |
void RLZTracker::DelayedInit() { |
@@ -302,10 +306,8 @@ void RLZTracker::DelayedInit() { |
void RLZTracker::ScheduleFinancialPing() { |
DCHECK(delegate_) << "RLZTracker used before initialization"; |
- delegate_->GetBlockingPool()->PostSequencedWorkerTaskWithShutdownBehavior( |
- worker_pool_token_, FROM_HERE, |
- base::Bind(&RLZTracker::PingNowImpl, base::Unretained(this)), |
- base::SequencedWorkerPool::SKIP_ON_SHUTDOWN); |
+ task_runner_->PostTask( |
+ FROM_HERE, base::Bind(&RLZTracker::PingNowImpl, base::Unretained(this))); |
} |
void RLZTracker::PingNowImpl() { |
@@ -386,12 +388,9 @@ bool RLZTracker::ScheduleRecordProductEvent(rlz_lib::Product product, |
if (!delegate_->IsOnUIThread()) |
return false; |
- delegate_->GetBlockingPool()->PostSequencedWorkerTaskWithShutdownBehavior( |
- worker_pool_token_, FROM_HERE, |
- base::Bind(base::IgnoreResult(&RLZTracker::RecordProductEvent), product, |
- point, event_id), |
- base::SequencedWorkerPool::SKIP_ON_SHUTDOWN); |
- |
+ task_runner_->PostTask( |
+ FROM_HERE, base::Bind(base::IgnoreResult(&RLZTracker::RecordProductEvent), |
+ product, point, event_id)); |
return true; |
} |
@@ -406,20 +405,19 @@ void RLZTracker::RecordFirstSearch(rlz_lib::AccessPoint point) { |
// Try to record event now, else set the flag to try later when we |
// attempt the ping. |
- if (!RecordProductEvent(rlz_lib::CHROME, point, rlz_lib::FIRST_SEARCH)) |
+ if (!RecordProductEvent(rlz_lib::CHROME, point, rlz_lib::FIRST_SEARCH)) { |
*record_used = true; |
- else if (send_ping_immediately_ && point == ChromeOmnibox()) |
+ } else if (send_ping_immediately_ && point == ChromeOmnibox()) { |
ScheduleDelayedInit(base::TimeDelta()); |
+ } |
} |
bool RLZTracker::ScheduleRecordFirstSearch(rlz_lib::AccessPoint point) { |
DCHECK(delegate_) << "RLZTracker used before initialization"; |
if (!delegate_->IsOnUIThread()) |
return false; |
- delegate_->GetBlockingPool()->PostSequencedWorkerTaskWithShutdownBehavior( |
- worker_pool_token_, FROM_HERE, |
- base::Bind(&RLZTracker::RecordFirstSearch, base::Unretained(this), point), |
- base::SequencedWorkerPool::SKIP_ON_SHUTDOWN); |
+ task_runner_->PostTask(FROM_HERE, base::Bind(&RLZTracker::RecordFirstSearch, |
+ base::Unretained(this), point)); |
return true; |
} |
@@ -504,11 +502,9 @@ bool RLZTracker::ScheduleGetAccessPointRlz(rlz_lib::AccessPoint point) { |
return false; |
base::string16* not_used = nullptr; |
- delegate_->GetBlockingPool()->PostSequencedWorkerTaskWithShutdownBehavior( |
- worker_pool_token_, FROM_HERE, |
- base::Bind(base::IgnoreResult(&RLZTracker::GetAccessPointRlz), point, |
- not_used), |
- base::SequencedWorkerPool::SKIP_ON_SHUTDOWN); |
+ task_runner_->PostTask( |
+ FROM_HERE, base::Bind(base::IgnoreResult(&RLZTracker::GetAccessPointRlz), |
+ point, not_used)); |
return true; |
} |
@@ -532,10 +528,8 @@ bool RLZTracker::ScheduleClearRlzState() { |
if (!delegate_->IsOnUIThread()) |
return false; |
- delegate_->GetBlockingPool()->PostSequencedWorkerTaskWithShutdownBehavior( |
- worker_pool_token_, FROM_HERE, |
- base::Bind(&RLZTracker::ClearRlzStateImpl, base::Unretained(this)), |
- base::SequencedWorkerPool::SKIP_ON_SHUTDOWN); |
+ task_runner_->PostTask(FROM_HERE, base::Bind(&RLZTracker::ClearRlzStateImpl, |
+ base::Unretained(this))); |
return true; |
} |
#endif |