base: Mark MessageLoop::Post*Task API deprecated
This is the first step in removing the direct MessageLoop task posting
API in favor of task_runner() and the TaskRunner APIs. See the design
doc for details[1].
BUG=465354
[1] https://docs.google.com/a/chromium.org/document/d/1qxdh2I61_aB_Uzh1QgNqvdWFBCL_E65G2smoSySw7KU/edit#heading=h.eqrpa9q6bsq5
Review URL: https://codereview.chromium.org/1013813003
Cr-Commit-Position: refs/heads/master@{#321674}
CrOS-Libchrome-Original-Commit: c8c18e9f1d3ac1033f9ca308143fc3b545475ebe
diff --git a/base/message_loop/message_loop.cc b/base/message_loop/message_loop.cc
index daa7782..eb0f968 100644
--- a/base/message_loop/message_loop.cc
+++ b/base/message_loop/message_loop.cc
@@ -275,31 +275,27 @@
void MessageLoop::PostTask(
const tracked_objects::Location& from_here,
const Closure& task) {
- DCHECK(!task.is_null()) << from_here.ToString();
- incoming_task_queue_->AddToIncomingQueue(from_here, task, TimeDelta(), true);
+ message_loop_proxy_->PostTask(from_here, task);
}
void MessageLoop::PostDelayedTask(
const tracked_objects::Location& from_here,
const Closure& task,
TimeDelta delay) {
- DCHECK(!task.is_null()) << from_here.ToString();
- incoming_task_queue_->AddToIncomingQueue(from_here, task, delay, true);
+ message_loop_proxy_->PostDelayedTask(from_here, task, delay);
}
void MessageLoop::PostNonNestableTask(
const tracked_objects::Location& from_here,
const Closure& task) {
- DCHECK(!task.is_null()) << from_here.ToString();
- incoming_task_queue_->AddToIncomingQueue(from_here, task, TimeDelta(), false);
+ message_loop_proxy_->PostNonNestableTask(from_here, task);
}
void MessageLoop::PostNonNestableDelayedTask(
const tracked_objects::Location& from_here,
const Closure& task,
TimeDelta delay) {
- DCHECK(!task.is_null()) << from_here.ToString();
- incoming_task_queue_->AddToIncomingQueue(from_here, task, delay, false);
+ message_loop_proxy_->PostNonNestableDelayedTask(from_here, task, delay);
}
void MessageLoop::Run() {
diff --git a/base/message_loop/message_loop.h b/base/message_loop/message_loop.h
index 7c76616..fd7596a 100644
--- a/base/message_loop/message_loop.h
+++ b/base/message_loop/message_loop.h
@@ -155,6 +155,9 @@
// DestructionObserver is receiving a notification callback.
void RemoveDestructionObserver(DestructionObserver* destruction_observer);
+ // NOTE: Deprecated; prefer task_runner() and the TaskRunner interfaces.
+ // TODO(skyostil): Remove these functions (crbug.com/465354).
+ //
// The "PostTask" family of methods call the task's Run method asynchronously
// from within a message loop at some point in the future.
//
@@ -300,6 +303,8 @@
}
// Gets the TaskRunner associated with this message loop.
+ // TODO(skyostil): Change this to return a const reference to a refptr
+ // once the internal type matches what is being returned (crbug.com/465354).
scoped_refptr<SingleThreadTaskRunner> task_runner() {
return message_loop_proxy_;
}