Index: cc/base/blocking_task_runner.cc |
diff --git a/cc/base/blocking_task_runner.cc b/cc/base/blocking_task_runner.cc |
deleted file mode 100644 |
index d19d237546c4bd6a1a0f0ba425101384322135ce..0000000000000000000000000000000000000000 |
--- a/cc/base/blocking_task_runner.cc |
+++ /dev/null |
@@ -1,75 +0,0 @@ |
-// Copyright 2013 The Chromium Authors. All rights reserved. |
-// Use of this source code is governed by a BSD-style license that can be |
-// found in the LICENSE file. |
- |
-#include "cc/base/blocking_task_runner.h" |
- |
-#include <utility> |
- |
-#include "base/callback.h" |
-#include "base/logging.h" |
-#include "base/message_loop/message_loop_proxy.h" |
- |
-namespace cc { |
- |
-// static |
-scoped_ptr<BlockingTaskRunner> BlockingTaskRunner::Create( |
- scoped_refptr<base::SingleThreadTaskRunner> task_runner) { |
- return make_scoped_ptr(new BlockingTaskRunner(task_runner)); |
-} |
- |
-BlockingTaskRunner::BlockingTaskRunner( |
- scoped_refptr<base::SingleThreadTaskRunner> task_runner) |
- : thread_id_(base::PlatformThread::CurrentId()), |
- task_runner_(task_runner), |
- capture_(0) { |
-} |
- |
-BlockingTaskRunner::~BlockingTaskRunner() { |
-} |
- |
-bool BlockingTaskRunner::BelongsToCurrentThread() { |
- return base::PlatformThread::CurrentId() == thread_id_; |
-} |
- |
-bool BlockingTaskRunner::PostTask(const tracked_objects::Location& from_here, |
- const base::Closure& task) { |
- base::AutoLock lock(lock_); |
- DCHECK(task_runner_.get() || capture_); |
- if (!capture_) |
- return task_runner_->PostTask(from_here, task); |
- captured_tasks_.push_back(task); |
- return true; |
-} |
- |
-void BlockingTaskRunner::SetCapture(bool capture) { |
- DCHECK(BelongsToCurrentThread()); |
- |
- std::vector<base::Closure> tasks; |
- |
- { |
- base::AutoLock lock(lock_); |
- capture_ += capture ? 1 : -1; |
- DCHECK_GE(capture_, 0); |
- |
- if (capture_) |
- return; |
- |
- // We're done capturing, so grab all the captured tasks and run them. |
- tasks.swap(captured_tasks_); |
- } |
- for (size_t i = 0; i < tasks.size(); ++i) |
- tasks[i].Run(); |
-} |
- |
-BlockingTaskRunner::CapturePostTasks::CapturePostTasks( |
- BlockingTaskRunner* blocking_runner) |
- : blocking_runner_(blocking_runner) { |
- blocking_runner_->SetCapture(true); |
-} |
- |
-BlockingTaskRunner::CapturePostTasks::~CapturePostTasks() { |
- blocking_runner_->SetCapture(false); |
-} |
- |
-} // namespace cc |