Remove use of deprecated MessageLoop methods in mojo.
MessageLoop::PostTask/PostDelayedTask/DeleteSoon/ReleaseSoon
are deprecated. This CL makes the following replacements to
remove some uses of these methods:
"MessageLoop(ForUI|ForIO)::current()->PostTask" ->
"ThreadTaskRunnerHandle::Get()->PostTask"
"MessageLoop(ForUI|ForIO)::current()->PostDelayedTask" ->
"ThreadTaskRunnerHandle::Get()->PostDelayedTask"
"MessageLoop(ForUI|ForIO)::current()->DeleteSoon" ->
"ThreadTaskRunnerHandle::Get()->DeleteSoon"
"MessageLoop(ForUI|ForIO)::current()->ReleaseSoon" ->
"ThreadTaskRunnerHandle::Get()->ReleaseSoon"
In files where these replacements are made, it adds these includes:
#include "base/location.h"
#include "base/single_thread_task_runner.h"
#include "base/threading/thread_task_runner_handle.h"
And removes this include if it is no longer required:
#include "base/message_loop/message_loop.h"
Why ThreadTaskRunnerHandle::Get() instead of
MessageLoop::current()->task_runner()?
- The two are equivalent on threads that run a MessageLoop.
- MessageLoop::current() doesn't work in base/task_scheduler
because the scheduler's thread don't run MessageLoops.
This CL will therefore facilitate the migration of browser
threads to base/task_scheduler.
Steps to generate this patch:
1. Run message_loop_cleanup.py (see code on the bug).
2. Run tools/sort-headers.py on modified files.
3. Run git cl format.
BUG=616447
R=ben@chromium.org
Review-Url: https://codereview.chromium.org/2029413004
Cr-Commit-Position: refs/heads/master@{#398108}
CrOS-Libchrome-Original-Commit: 76147bea5dc613dbc4aa592cbe139d6c2dbd0df9
diff --git a/mojo/android/javatests/mojo_test_case.cc b/mojo/android/javatests/mojo_test_case.cc
index 176e9bc..6d88985 100644
--- a/mojo/android/javatests/mojo_test_case.cc
+++ b/mojo/android/javatests/mojo_test_case.cc
@@ -8,10 +8,13 @@
#include "base/android/scoped_java_ref.h"
#include "base/at_exit.h"
#include "base/bind.h"
+#include "base/location.h"
#include "base/logging.h"
#include "base/message_loop/message_loop.h"
#include "base/run_loop.h"
+#include "base/single_thread_task_runner.h"
#include "base/test/test_support_android.h"
+#include "base/threading/thread_task_runner_handle.h"
#include "jni/MojoTestCase_jni.h"
#include "mojo/message_pump/message_pump_mojo.h"
@@ -49,7 +52,7 @@
jlong timeout_ms) {
base::RunLoop run_loop;
if (timeout_ms) {
- base::MessageLoop::current()->PostDelayedTask(
+ base::ThreadTaskRunnerHandle::Get()->PostDelayedTask(
FROM_HERE, base::MessageLoop::QuitWhenIdleClosure(),
base::TimeDelta::FromMilliseconds(timeout_ms));
run_loop.Run();
diff --git a/mojo/android/system/core_impl.cc b/mojo/android/system/core_impl.cc
index 5c47ef6..526c050 100644
--- a/mojo/android/system/core_impl.cc
+++ b/mojo/android/system/core_impl.cc
@@ -15,7 +15,9 @@
#include "base/android/library_loader/library_loader_hooks.h"
#include "base/android/scoped_java_ref.h"
#include "base/bind.h"
-#include "base/message_loop/message_loop.h"
+#include "base/location.h"
+#include "base/single_thread_task_runner.h"
+#include "base/threading/thread_task_runner_handle.h"
#include "jni/CoreImpl_jni.h"
#include "mojo/message_pump/handle_watcher.h"
#include "mojo/public/c/system/core.h"
@@ -381,7 +383,7 @@
base::Bind(&AsyncWaitCallback, watcher, callback_data));
} else {
cancel_id = kInvalidHandleCancelID;
- base::MessageLoop::current()->PostTask(
+ base::ThreadTaskRunnerHandle::Get()->PostTask(
FROM_HERE, base::Bind(&AsyncWaitCallback, nullptr, callback_data,
MOJO_RESULT_INVALID_ARGUMENT));
}