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

Unified Diff: components/rlz/rlz_tracker.cc

Issue 2949263003: Remove call to GetBlockingPool in RLZ (Closed)
Patch Set: rebased Created 3 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 side-by-side diff with in-line comments
Download patch
Index: components/rlz/rlz_tracker.cc
diff --git a/components/rlz/rlz_tracker.cc b/components/rlz/rlz_tracker.cc
index 4a1abea602c943e19f2eae90865317410a6aa05f..d7d0c62fa3ae27243a7b1d3d1957c52b3449cd2c 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(), base::TaskPriority::BACKGROUND})) {}
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

Powered by Google App Engine
This is Rietveld 408576698