aboutsummaryrefslogtreecommitdiffhomepage
path: root/tools/ProcStats.h
blob: f085fe31a6ff532044928b32a04e567a1be6a5a8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
/*
 * Copyright 2014 Google Inc.
 *
 * Use of this source code is governed by a BSD-style license that can be
 * found in the LICENSE file.
 */

#ifndef ProcStats_DEFINED
#define ProcStats_DEFINED

/**
 * ProcStats - Process Statistics Functions
 */

namespace sk_tools {

/**
 *  If implemented, returns the maximum resident set size in MB.
 *  If not, returns -1.
 */
int getMaxResidentSetSizeMB();

/**
 *  If implemented, returns the current resident set size in MB.
 *  If not, returns -1.
 */
int getCurrResidentSetSizeMB();

/**
 *  If implemented, returns getCurrResidentSetSizeMB().
 *  If not, if implemented, returns getMaxResidentSetSizeMB().
 *  If not, returns -1.
 */
inline int getBestResidentSetSizeMB() {
    int mb = getCurrResidentSetSizeMB();
    return mb >= 0 ? mb : getMaxResidentSetSizeMB();
}

}  // namespace sk_tools

#endif  // ProcStats_DEFINED