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

Unified Diff: chrome/browser/history/history_db_task.h

Issue 387923002: Make HistoryDBTask not refcounted, and ensure it's destroyed on its origin thread. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: revert unnecessary changes Created 6 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
« no previous file with comments | « chrome/browser/history/history_browsertest.cc ('k') | chrome/browser/history/history_service.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/history/history_db_task.h
diff --git a/chrome/browser/history/history_db_task.h b/chrome/browser/history/history_db_task.h
index 4e0d8114ef71c601b766151743326af5f3c68a72..3843fa5d157aaa10ae301bb9f0d8756c33a3b5d7 100644
--- a/chrome/browser/history/history_db_task.h
+++ b/chrome/browser/history/history_db_task.h
@@ -5,8 +5,6 @@
#ifndef CHROME_BROWSER_HISTORY_HISTORY_DB_TASK_H_
#define CHROME_BROWSER_HISTORY_HISTORY_DB_TASK_H_
-#include "base/memory/ref_counted.h"
-
namespace history {
class HistoryBackend;
@@ -16,9 +14,12 @@ class HistoryDatabase;
// thread. HistoryDBTask is scheduled using HistoryService::ScheduleDBTask.
// When HistoryBackend processes the task it invokes RunOnDBThread. Once the
// task completes and has not been canceled, DoneRunOnMainThread is invoked back
-// on the main thread.
-class HistoryDBTask : public base::RefCountedThreadSafe<HistoryDBTask> {
+// on the main thread, after which this object is destroyed, also on the
+// main thread.
+class HistoryDBTask {
public:
+ virtual ~HistoryDBTask() {}
+
// Invoked on the database thread. The return value indicates whether the
// task is done. A return value of true signals the task is done and
// RunOnDBThread should NOT be invoked again. A return value of false
@@ -30,11 +31,6 @@ class HistoryDBTask : public base::RefCountedThreadSafe<HistoryDBTask> {
// only invoked if the request was not canceled and returned true from
// RunOnDBThread.
virtual void DoneRunOnMainThread() = 0;
-
- protected:
- friend class base::RefCountedThreadSafe<HistoryDBTask>;
-
- virtual ~HistoryDBTask() {}
};
} // namespace history
« no previous file with comments | « chrome/browser/history/history_browsertest.cc ('k') | chrome/browser/history/history_service.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698