usage_timer.h
Go to the documentation of this file.
1 /*
2  *
3  * Copyright 2015 gRPC authors.
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  *
17  */
18 
19 #ifndef TEST_QPS_USAGE_TIMER_H
20 #define TEST_QPS_USAGE_TIMER_H
21 
22 class UsageTimer {
23  public:
24  UsageTimer();
25 
26  struct Result {
27  double wall;
28  double user;
29  double system;
30  unsigned long long total_cpu_time;
31  unsigned long long idle_cpu_time;
32  };
33 
34  Result Mark() const;
35 
36  static double Now();
37 
38  private:
39  static Result Sample();
40 
41  const Result start_;
42 };
43 
44 #endif // TEST_QPS_TIMER_H
UsageTimer::Sample
static Result Sample()
Definition: usage_timer.cc:79
UsageTimer::Now
static double Now()
Definition: usage_timer.cc:38
UsageTimer::Result::wall
double wall
Definition: usage_timer.h:27
UsageTimer::Mark
Result Mark() const
Definition: usage_timer.cc:89
UsageTimer::Result::total_cpu_time
unsigned long long total_cpu_time
Definition: usage_timer.h:30
UsageTimer::Result::idle_cpu_time
unsigned long long idle_cpu_time
Definition: usage_timer.h:31
UsageTimer::Result
Definition: usage_timer.h:26
UsageTimer::UsageTimer
UsageTimer()
Definition: usage_timer.cc:36
UsageTimer::Result::user
double user
Definition: usage_timer.h:28
UsageTimer::start_
const Result start_
Definition: usage_timer.h:41
UsageTimer::Result::system
double system
Definition: usage_timer.h:29
UsageTimer
Definition: usage_timer.h:22


grpc
Author(s):
autogenerated on Thu Mar 13 2025 03:01:48