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

Side by Side Diff: chrome/browser/task_manager/sampling/task_manager_impl.h

Issue 2905403002: plumb network upload into the task manager (Closed)
Patch Set: fixed comments Created 3 years, 6 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 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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 #ifndef CHROME_BROWSER_TASK_MANAGER_SAMPLING_TASK_MANAGER_IMPL_H_ 5 #ifndef CHROME_BROWSER_TASK_MANAGER_SAMPLING_TASK_MANAGER_IMPL_H_
6 #define CHROME_BROWSER_TASK_MANAGER_SAMPLING_TASK_MANAGER_IMPL_H_ 6 #define CHROME_BROWSER_TASK_MANAGER_SAMPLING_TASK_MANAGER_IMPL_H_
7 7
8 #include <stddef.h> 8 #include <stddef.h>
9 #include <stdint.h> 9 #include <stdint.h>
10 10
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after
67 const gfx::ImageSkia& GetIcon(TaskId task_id) const override; 67 const gfx::ImageSkia& GetIcon(TaskId task_id) const override;
68 const base::ProcessHandle& GetProcessHandle(TaskId task_id) const override; 68 const base::ProcessHandle& GetProcessHandle(TaskId task_id) const override;
69 const base::ProcessId& GetProcessId(TaskId task_id) const override; 69 const base::ProcessId& GetProcessId(TaskId task_id) const override;
70 Task::Type GetType(TaskId task_id) const override; 70 Task::Type GetType(TaskId task_id) const override;
71 int GetTabId(TaskId task_id) const override; 71 int GetTabId(TaskId task_id) const override;
72 int GetChildProcessUniqueId(TaskId task_id) const override; 72 int GetChildProcessUniqueId(TaskId task_id) const override;
73 void GetTerminationStatus(TaskId task_id, 73 void GetTerminationStatus(TaskId task_id,
74 base::TerminationStatus* out_status, 74 base::TerminationStatus* out_status,
75 int* out_error_code) const override; 75 int* out_error_code) const override;
76 int64_t GetNetworkUsage(TaskId task_id) const override; 76 int64_t GetNetworkUsage(TaskId task_id) const override;
77 int64_t GetCumulativeNetworkUsage(TaskId task_id) const override;
77 int64_t GetProcessTotalNetworkUsage(TaskId task_id) const override; 78 int64_t GetProcessTotalNetworkUsage(TaskId task_id) const override;
79 int64_t GetCumulativeProcessTotalNetworkUsage(TaskId task_id) const override;
78 int64_t GetSqliteMemoryUsed(TaskId task_id) const override; 80 int64_t GetSqliteMemoryUsed(TaskId task_id) const override;
79 bool GetV8Memory(TaskId task_id, 81 bool GetV8Memory(TaskId task_id,
80 int64_t* allocated, 82 int64_t* allocated,
81 int64_t* used) const override; 83 int64_t* used) const override;
82 bool GetWebCacheStats( 84 bool GetWebCacheStats(
83 TaskId task_id, 85 TaskId task_id,
84 blink::WebCache::ResourceTypeStats* stats) const override; 86 blink::WebCache::ResourceTypeStats* stats) const override;
85 int GetKeepaliveCount(TaskId task_id) const override; 87 int GetKeepaliveCount(TaskId task_id) const override;
86 const TaskIdList& GetTaskIdsList() const override; 88 const TaskIdList& GetTaskIdsList() const override;
87 TaskIdList GetIdsOfTasksSharingSameProcess(TaskId task_id) const override; 89 TaskIdList GetIdsOfTasksSharingSameProcess(TaskId task_id) const override;
88 size_t GetNumberOfTasksOnSameProcess(TaskId task_id) const override; 90 size_t GetNumberOfTasksOnSameProcess(TaskId task_id) const override;
89 TaskId GetTaskIdForWebContents( 91 TaskId GetTaskIdForWebContents(
90 content::WebContents* web_contents) const override; 92 content::WebContents* web_contents) const override;
91 93
92 // task_manager::TaskProviderObserver: 94 // task_manager::TaskProviderObserver:
93 void TaskAdded(Task* task) override; 95 void TaskAdded(Task* task) override;
94 void TaskRemoved(Task* task) override; 96 void TaskRemoved(Task* task) override;
95 void TaskUnresponsive(Task* task) override; 97 void TaskUnresponsive(Task* task) override;
96 98
97 // The notification method on the UI thread when multiple bytes are read 99 // The notification method on the UI thread when multiple bytes are
98 // from URLRequests. This will be called by the |io_thread_helper_| 100 // transferred from URLRequests. This will be called by the
99 static void OnMultipleBytesReadUI(std::vector<BytesReadParam>* params); 101 // |io_thread_helper_|
102 static void OnMultipleBytesTransferredUI(
103 std::vector<BytesTransferredParam>* params);
100 104
101 private: 105 private:
102 friend struct base::LazyInstanceTraitsBase<TaskManagerImpl>; 106 friend struct base::LazyInstanceTraitsBase<TaskManagerImpl>;
103 107
104 TaskManagerImpl(); 108 TaskManagerImpl();
105 109
106 void OnVideoMemoryUsageStatsUpdate( 110 void OnVideoMemoryUsageStatsUpdate(
107 const gpu::VideoMemoryUsageStats& gpu_memory_stats); 111 const gpu::VideoMemoryUsageStats& gpu_memory_stats);
108 112
109 // task_manager::TaskManagerInterface: 113 // task_manager::TaskManagerInterface:
110 void Refresh() override; 114 void Refresh() override;
111 void StartUpdating() override; 115 void StartUpdating() override;
112 void StopUpdating() override; 116 void StopUpdating() override;
113 117
114 // Lookup a task by its pid, child_id and possibly route_id. 118 // Lookup a task by its pid, child_id and possibly route_id.
115 Task* GetTaskByPidOrRoute(int pid, int child_id, int route_id) const; 119 Task* GetTaskByPidOrRoute(int pid, int child_id, int route_id) const;
116 120
117 // Based on |param| the appropriate task will be updated by its network usage. 121 // Based on |param| the appropriate task will be updated by its network usage.
118 // Returns true if it was able to match |param| to an existing task, returns 122 // Returns true if it was able to match |param| to an existing task, returns
119 // false otherwise, at which point the caller must explicitly match these 123 // false otherwise, at which point the caller must explicitly match these
120 // bytes to the browser process by calling this method again with 124 // bytes to the browser process by calling this method again with
121 // |param.origin_pid = 0| and |param.child_id = param.route_id = -1|. 125 // |param.origin_pid = 0| and |param.child_id = param.route_id = -1|.
122 bool UpdateTasksWithBytesRead(const BytesReadParam& param); 126 bool UpdateTasksWithBytesTransferred(const BytesTransferredParam& param);
123 127
124 TaskGroup* GetTaskGroupByTaskId(TaskId task_id) const; 128 TaskGroup* GetTaskGroupByTaskId(TaskId task_id) const;
125 Task* GetTaskByTaskId(TaskId task_id) const; 129 Task* GetTaskByTaskId(TaskId task_id) const;
126 130
127 // Called back by a TaskGroup when the resource calculations done on the 131 // Called back by a TaskGroup when the resource calculations done on the
128 // background thread has completed. 132 // background thread has completed.
129 void OnTaskGroupBackgroundCalculationsDone(); 133 void OnTaskGroupBackgroundCalculationsDone();
130 134
131 const base::Closure on_background_data_ready_callback_; 135 const base::Closure on_background_data_ready_callback_;
132 136
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
166 // running. 170 // running.
167 bool is_running_; 171 bool is_running_;
168 172
169 base::WeakPtrFactory<TaskManagerImpl> weak_ptr_factory_; 173 base::WeakPtrFactory<TaskManagerImpl> weak_ptr_factory_;
170 DISALLOW_COPY_AND_ASSIGN(TaskManagerImpl); 174 DISALLOW_COPY_AND_ASSIGN(TaskManagerImpl);
171 }; 175 };
172 176
173 } // namespace task_manager 177 } // namespace task_manager
174 178
175 #endif // CHROME_BROWSER_TASK_MANAGER_SAMPLING_TASK_MANAGER_IMPL_H_ 179 #endif // CHROME_BROWSER_TASK_MANAGER_SAMPLING_TASK_MANAGER_IMPL_H_
OLDNEW
« no previous file with comments | « chrome/browser/task_manager/sampling/task_group_unittest.cc ('k') | chrome/browser/task_manager/sampling/task_manager_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698