VMware Tanzu GemFire Native C++ Reference 10.2.7
CacheStatistics.hpp
Go to the documentation of this file.
1/*
2 * Licensed to the Apache Software Foundation (ASF) under one or more
3 * contributor license agreements. See the NOTICE file distributed with
4 * this work for additional information regarding copyright ownership.
5 * The ASF licenses this file to You under the Apache License, Version 2.0
6 * (the "License"); you may not use this file except in compliance with
7 * the License. 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#pragma once
19
20#ifndef GEODE_CACHESTATISTICS_H_
21#define GEODE_CACHESTATISTICS_H_
22
23#include <atomic>
24#include <chrono>
25
26#include "internal/geode_globals.hpp"
27
32namespace apache {
33namespace geode {
34namespace client {
35
36class LocalRegion;
37
48class APACHE_GEODE_EXPORT CacheStatistics {
49 public:
50 typedef std::chrono::system_clock::time_point time_point;
51
52 CacheStatistics() : m_lastAccessTime(0), m_lastModifiedTime(0) {}
53 CacheStatistics(const CacheStatistics&) = delete;
54 virtual ~CacheStatistics() = default;
55
78 virtual time_point getLastModifiedTime() const;
79
97 virtual time_point getLastAccessedTime() const;
98
99 private:
100 virtual void setLastAccessedTime(time_point lat);
101 virtual void setLastModifiedTime(time_point lmt);
102
103 std::atomic<time_point::duration::rep> m_lastAccessTime;
104 std::atomic<time_point::duration::rep> m_lastModifiedTime;
105
106 friend class LocalRegion;
107};
108
109} // namespace client
110} // namespace geode
111} // namespace apache
112
113#endif // GEODE_CACHESTATISTICS_H_
Defines common statistical information for both the region and its entries.
Definition: CacheStatistics.hpp:48
virtual time_point getLastAccessedTime() const
For an entry, returns the last time it was accessed via Region.get.
virtual time_point getLastModifiedTime() const
For an entry, returns the time that the entry's value was last modified.

Apache Geode C++ Cache API Documentation