Chromium Code Reviews| Index: base/task_runner.cc |
| diff --git a/base/task_runner.cc b/base/task_runner.cc |
| index 262e1f8b09eac8d9f91b4113ddeccc27a33323ad..8f9d0f5a082b1023ab2be433ca25986703bbbb08 100644 |
| --- a/base/task_runner.cc |
| +++ b/base/task_runner.cc |
| @@ -4,42 +4,14 @@ |
| #include "base/task_runner.h" |
| +#include "base/bind.h" |
| +#include "base/bind_helpers.h" |
|
gab
2016/07/25 17:57:44
I think bind_helpers.h is an implicit include from
fdoray
2016/07/25 20:40:04
Done.
|
| #include "base/compiler_specific.h" |
| #include "base/logging.h" |
| #include "base/threading/post_task_and_reply_impl.h" |
| namespace base { |
| -namespace { |
| - |
| -// TODO(akalin): There's only one other implementation of |
| -// PostTaskAndReplyImpl in WorkerPool. Investigate whether it'll be |
| -// possible to merge the two. |
| -class PostTaskAndReplyTaskRunner : public internal::PostTaskAndReplyImpl { |
| - public: |
| - explicit PostTaskAndReplyTaskRunner(TaskRunner* destination); |
| - |
| - private: |
| - bool PostTask(const tracked_objects::Location& from_here, |
| - const Closure& task) override; |
| - |
| - // Non-owning. |
| - TaskRunner* destination_; |
| -}; |
| - |
| -PostTaskAndReplyTaskRunner::PostTaskAndReplyTaskRunner( |
| - TaskRunner* destination) : destination_(destination) { |
| - DCHECK(destination_); |
| -} |
| - |
| -bool PostTaskAndReplyTaskRunner::PostTask( |
| - const tracked_objects::Location& from_here, |
| - const Closure& task) { |
| - return destination_->PostTask(from_here, task); |
| -} |
| - |
| -} // namespace |
| - |
| bool TaskRunner::PostTask(const tracked_objects::Location& from_here, |
| const Closure& task) { |
| return PostDelayedTask(from_here, task, base::TimeDelta()); |
| @@ -49,8 +21,8 @@ bool TaskRunner::PostTaskAndReply( |
| const tracked_objects::Location& from_here, |
| const Closure& task, |
| const Closure& reply) { |
| - return PostTaskAndReplyTaskRunner(this).PostTaskAndReply( |
| - from_here, task, reply); |
| + return internal::PostTaskAndReply( |
| + from_here, task, reply, Bind(&TaskRunner::PostTask, Unretained(this))); |
| } |
| TaskRunner::TaskRunner() {} |