OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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/test/base/chrome_process_util.h" | 5 #include "chrome/test/base/chrome_process_util.h" |
6 | 6 |
7 #include <string> | 7 #include <string> |
8 #include <vector> | 8 #include <vector> |
9 | 9 |
10 #include "base/command_line.h" | 10 #include "base/command_line.h" |
11 #include "base/process_util.h" | 11 #include "base/process_util.h" |
12 #include "base/string_number_conversions.h" | 12 #include "base/string_number_conversions.h" |
13 #include "base/string_split.h" | 13 #include "base/string_split.h" |
14 #include "base/string_util.h" | 14 #include "base/string_util.h" |
| 15 #include "base/stringprintf.h" |
15 | 16 |
16 MacChromeProcessInfoList GetRunningMacProcessInfo( | 17 MacChromeProcessInfoList GetRunningMacProcessInfo( |
17 const ChromeProcessList &process_list) { | 18 const ChromeProcessList& process_list) { |
18 MacChromeProcessInfoList result; | 19 MacChromeProcessInfoList result; |
19 | 20 |
20 // Build up the ps command line | 21 // Build up the ps command line |
21 std::vector<std::string> cmdline; | 22 std::vector<std::string> cmdline; |
22 cmdline.push_back("ps"); | 23 cmdline.push_back("ps"); |
23 cmdline.push_back("-o"); | 24 cmdline.push_back("-o"); |
24 cmdline.push_back("pid=,rsz=,vsz="); // fields we need, no headings | 25 cmdline.push_back("pid=,rsz=,vsz="); // fields we need, no headings |
25 ChromeProcessList::const_iterator process_iter; | 26 ChromeProcessList::const_iterator process_iter; |
26 for (process_iter = process_list.begin(); | 27 for (process_iter = process_list.begin(); |
27 process_iter != process_list.end(); | 28 process_iter != process_list.end(); |
28 ++process_iter) { | 29 ++process_iter) { |
29 cmdline.push_back("-p"); | 30 cmdline.push_back("-p"); |
30 cmdline.push_back(StringPrintf("%d", *process_iter)); | 31 cmdline.push_back(base::StringPrintf("%d", *process_iter)); |
31 } | 32 } |
32 | 33 |
33 // Invoke it | 34 // Invoke it |
34 std::string ps_output; | 35 std::string ps_output; |
35 if (!base::GetAppOutput(CommandLine(cmdline), &ps_output)) | 36 if (!base::GetAppOutput(CommandLine(cmdline), &ps_output)) |
36 return result; // All the pids might have exited | 37 return result; // All the pids might have exited |
37 | 38 |
38 // Process the results | 39 // Process the results |
39 std::vector<std::string> ps_output_lines; | 40 std::vector<std::string> ps_output_lines; |
40 base::SplitString(ps_output, '\n', &ps_output_lines); | 41 base::SplitString(ps_output, '\n', &ps_output_lines); |
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
99 GetMemoryValuesHack(process_handle_, &virtual_size, &working_set_size); | 100 GetMemoryValuesHack(process_handle_, &virtual_size, &working_set_size); |
100 return virtual_size; | 101 return virtual_size; |
101 } | 102 } |
102 | 103 |
103 size_t ChromeTestProcessMetrics::GetWorkingSetSize() { | 104 size_t ChromeTestProcessMetrics::GetWorkingSetSize() { |
104 size_t virtual_size; | 105 size_t virtual_size; |
105 size_t working_set_size; | 106 size_t working_set_size; |
106 GetMemoryValuesHack(process_handle_, &virtual_size, &working_set_size); | 107 GetMemoryValuesHack(process_handle_, &virtual_size, &working_set_size); |
107 return working_set_size; | 108 return working_set_size; |
108 } | 109 } |
OLD | NEW |