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

Side by Side Diff: base/memory/memory_coordinator_proxy.cc

Issue 2479673002: Expose MemoryCoordinator's global budget information. (Closed)
Patch Set: Small cleanup. Created 4 years, 1 month 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 "base/memory/memory_coordinator_proxy.h" 5 #include "base/memory/memory_coordinator_proxy.h"
6 #include "base/process/process_metrics.h"
6 7
7 namespace base { 8 namespace base {
8 9
9 MemoryCoordinatorProxy::MemoryCoordinatorProxy() { 10 MemoryCoordinatorProxy::MemoryCoordinatorProxy() {
10 } 11 }
11 12
12 MemoryCoordinatorProxy::~MemoryCoordinatorProxy() { 13 MemoryCoordinatorProxy::~MemoryCoordinatorProxy() {
13 } 14 }
14 15
15 MemoryCoordinatorProxy* MemoryCoordinatorProxy::GetInstance() { 16 MemoryCoordinatorProxy* MemoryCoordinatorProxy::GetInstance() {
16 return Singleton<base::MemoryCoordinatorProxy>::get(); 17 return Singleton<base::MemoryCoordinatorProxy>::get();
17 } 18 }
18 19
19 MemoryState MemoryCoordinatorProxy::GetCurrentMemoryState() const { 20 MemoryState MemoryCoordinatorProxy::GetCurrentMemoryState() const {
20 if (!getter_callback_) 21 if (!getter_callback_)
21 return MemoryState::NORMAL; 22 return MemoryState::NORMAL;
22 return getter_callback_.Run(); 23 return getter_callback_.Run();
23 } 24 }
24 25
25 void MemoryCoordinatorProxy::SetCurrentMemoryStateForTesting( 26 void MemoryCoordinatorProxy::SetCurrentMemoryStateForTesting(
26 MemoryState memory_state) { 27 MemoryState memory_state) {
27 DCHECK(setter_callback_); 28 DCHECK(setter_callback_);
28 setter_callback_.Run(memory_state); 29 setter_callback_.Run(memory_state);
29 } 30 }
30 31
32
33 int64_t MemoryCoordinatorProxy::GetRemainingGlobalBudget() const {
34 if (!get_remaining_budget_callback_)
35 return 0;
36 return get_remaining_budget_callback_.Run();
37 }
38
31 void MemoryCoordinatorProxy::SetGetCurrentMemoryStateCallback( 39 void MemoryCoordinatorProxy::SetGetCurrentMemoryStateCallback(
32 GetCurrentMemoryStateCallback callback) { 40 GetCurrentMemoryStateCallback callback) {
33 getter_callback_ = callback; 41 getter_callback_ = callback;
34 } 42 }
35 43
36 void MemoryCoordinatorProxy::SetSetCurrentMemoryStateForTestingCallback( 44 void MemoryCoordinatorProxy::SetSetCurrentMemoryStateForTestingCallback(
37 SetCurrentMemoryStateCallback callback) { 45 SetCurrentMemoryStateCallback callback) {
38 setter_callback_ = callback; 46 setter_callback_ = callback;
39 } 47 }
40 48
49 void MemoryCoordinatorProxy::SetGetRemainingGlobalBudgetCallback(
50 GetRemainingGlobalBudgetCallback get_remaining_budget_callback) {
51 get_remaining_budget_callback_ = get_remaining_budget_callback;
52 }
53
41 } // namespace base 54 } // namespace base
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698