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

Side by Side Diff: chrome/browser/task_manager/task_manager_tester.cc

Issue 2593233003: Add a task manager column that shows memory state of processes (Closed)
Patch Set: fix compile error Created 3 years, 11 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 unified diff | Download patch
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/task_manager/task_manager_tester.h" 5 #include "chrome/browser/task_manager/task_manager_tester.h"
6 6
7 #include "base/memory/ptr_util.h" 7 #include "base/memory/ptr_util.h"
8 #include "chrome/browser/browser_process.h" 8 #include "chrome/browser/browser_process.h"
9 #include "chrome/browser/profiles/profile.h" 9 #include "chrome/browser/profiles/profile.h"
10 #include "chrome/browser/sessions/session_tab_helper.h" 10 #include "chrome/browser/sessions/session_tab_helper.h"
(...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after
102 case ColumnSpecifier::SQLITE_MEMORY_USED: 102 case ColumnSpecifier::SQLITE_MEMORY_USED:
103 column_id = IDS_TASK_MANAGER_SQLITE_MEMORY_USED_COLUMN; 103 column_id = IDS_TASK_MANAGER_SQLITE_MEMORY_USED_COLUMN;
104 break; 104 break;
105 case ColumnSpecifier::V8_MEMORY_USED: 105 case ColumnSpecifier::V8_MEMORY_USED:
106 case ColumnSpecifier::V8_MEMORY: 106 case ColumnSpecifier::V8_MEMORY:
107 column_id = IDS_TASK_MANAGER_JAVASCRIPT_MEMORY_ALLOCATED_COLUMN; 107 column_id = IDS_TASK_MANAGER_JAVASCRIPT_MEMORY_ALLOCATED_COLUMN;
108 break; 108 break;
109 case ColumnSpecifier::IDLE_WAKEUPS: 109 case ColumnSpecifier::IDLE_WAKEUPS:
110 column_id = IDS_TASK_MANAGER_IDLE_WAKEUPS_COLUMN; 110 column_id = IDS_TASK_MANAGER_IDLE_WAKEUPS_COLUMN;
111 break; 111 break;
112 case ColumnSpecifier::MEMORY_STATE:
113 column_id = IDS_TASK_MANAGER_MEMORY_STATE_COLUMN;
114 break;
112 } 115 }
113 model_->ToggleColumnVisibility(column_id); 116 model_->ToggleColumnVisibility(column_id);
114 } 117 }
115 118
116 int64_t TaskManagerTester::GetColumnValue(ColumnSpecifier column, int row) { 119 int64_t TaskManagerTester::GetColumnValue(ColumnSpecifier column, int row) {
117 TaskId task_id = model_->tasks_[row]; 120 TaskId task_id = model_->tasks_[row];
118 int64_t value = 0; 121 int64_t value = 0;
119 int64_t ignored = 0; 122 int64_t ignored = 0;
120 bool success = false; 123 bool success = false;
121 124
122 switch (column) { 125 switch (column) {
123 case ColumnSpecifier::COLUMN_NONE: 126 case ColumnSpecifier::COLUMN_NONE:
127 case ColumnSpecifier::MEMORY_STATE:
124 break; 128 break;
125 case ColumnSpecifier::V8_MEMORY: 129 case ColumnSpecifier::V8_MEMORY:
126 success = task_manager()->GetV8Memory(task_id, &value, &ignored); 130 success = task_manager()->GetV8Memory(task_id, &value, &ignored);
127 break; 131 break;
128 case ColumnSpecifier::V8_MEMORY_USED: 132 case ColumnSpecifier::V8_MEMORY_USED:
129 success = task_manager()->GetV8Memory(task_id, &ignored, &value); 133 success = task_manager()->GetV8Memory(task_id, &ignored, &value);
130 break; 134 break;
131 case ColumnSpecifier::SQLITE_MEMORY_USED: 135 case ColumnSpecifier::SQLITE_MEMORY_USED:
132 value = task_manager()->GetSqliteMemoryUsed(task_id); 136 value = task_manager()->GetSqliteMemoryUsed(task_id);
133 success = true; 137 success = true;
134 break; 138 break;
135 case ColumnSpecifier::IDLE_WAKEUPS: 139 case ColumnSpecifier::IDLE_WAKEUPS:
136 value = task_manager()->GetIdleWakeupsPerSecond(task_id); 140 value = task_manager()->GetIdleWakeupsPerSecond(task_id);
137 success = true; 141 success = true;
138 break; 142 break;
139 } 143 }
140 if (!success) 144 if (!success)
141 return 0; 145 return 0;
142 return value; 146 return value;
143 } 147 }
144 148
145 int32_t TaskManagerTester::GetTabId(int row) { 149 int32_t TaskManagerTester::GetTabId(int row) {
146 TaskId task_id = model_->tasks_[row]; 150 TaskId task_id = model_->tasks_[row];
147 return task_manager()->GetTabId(task_id); 151 return task_manager()->GetTabId(task_id);
148 } 152 }
149 153
154 base::MemoryState TaskManagerTester::GetMemoryState(int row) {
155 TaskId task_id = model_->tasks_[row];
156 return task_manager()->GetMemoryState(task_id);
157 }
158
150 void TaskManagerTester::Kill(int row) { 159 void TaskManagerTester::Kill(int row) {
151 model_->KillTask(row); 160 model_->KillTask(row);
152 } 161 }
153 162
154 void TaskManagerTester::GetRowsGroupRange(int row, 163 void TaskManagerTester::GetRowsGroupRange(int row,
155 int* out_start, 164 int* out_start,
156 int* out_length) { 165 int* out_length) {
157 return model_->GetRowsGroupRange(row, out_start, out_length); 166 return model_->GetRowsGroupRange(row, out_start, out_length);
158 } 167 }
159 168
160 TaskManagerInterface* TaskManagerTester::task_manager() { 169 TaskManagerInterface* TaskManagerTester::task_manager() {
161 return model_->observed_task_manager(); 170 return model_->observed_task_manager();
162 } 171 }
163 172
164 // static 173 // static
165 std::unique_ptr<TaskManagerTester> TaskManagerTester::Create( 174 std::unique_ptr<TaskManagerTester> TaskManagerTester::Create(
166 const base::Closure& callback) { 175 const base::Closure& callback) {
167 return base::WrapUnique(new TaskManagerTester(callback)); 176 return base::WrapUnique(new TaskManagerTester(callback));
168 } 177 }
169 178
170 } // namespace task_manager 179 } // namespace task_manager
OLDNEW
« no previous file with comments | « chrome/browser/task_manager/task_manager_tester.h ('k') | chrome/browser/task_manager/test_task_manager.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698