19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 * or visit www.oracle.com if you need additional information or have any
21 * questions.
22 *
23 */
24
25 #ifndef SHARE_GC_SHENANDOAH_HEURISTICS_SHENANDOAHSPACEINFO_HPP
26 #define SHARE_GC_SHENANDOAH_HEURISTICS_SHENANDOAHSPACEINFO_HPP
27
28 #include "utilities/globalDefinitions.hpp"
29
30 /*
31 * The purpose of this interface is to decouple the heuristics from a
32 * direct dependency on the ShenandoahHeap singleton instance. This is
33 * done to facilitate future unit testing of the heuristics and to support
34 * future operational modes of Shenandoah in which the heap may be split
35 * into generations.
36 */
37 class ShenandoahSpaceInfo {
38 public:
39 virtual size_t soft_max_capacity() const = 0;
40 virtual size_t max_capacity() const = 0;
41 virtual size_t available() const = 0;
42 virtual size_t bytes_allocated_since_gc_start() const = 0;
43 };
44
45 #endif //SHARE_GC_SHENANDOAH_HEURISTICS_SHENANDOAHSPACEINFO_HPP
|
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 * or visit www.oracle.com if you need additional information or have any
21 * questions.
22 *
23 */
24
25 #ifndef SHARE_GC_SHENANDOAH_HEURISTICS_SHENANDOAHSPACEINFO_HPP
26 #define SHARE_GC_SHENANDOAH_HEURISTICS_SHENANDOAHSPACEINFO_HPP
27
28 #include "utilities/globalDefinitions.hpp"
29
30 /*
31 * The purpose of this interface is to decouple the heuristics from a
32 * direct dependency on the ShenandoahHeap singleton instance. This is
33 * done to facilitate future unit testing of the heuristics and to support
34 * future operational modes of Shenandoah in which the heap may be split
35 * into generations.
36 */
37 class ShenandoahSpaceInfo {
38 public:
39 virtual const char* name() const = 0;
40 virtual size_t soft_max_capacity() const = 0;
41 virtual size_t max_capacity() const = 0;
42 virtual size_t soft_available() const = 0;
43 virtual size_t available() const = 0;
44 virtual size_t used() const = 0;
45 virtual size_t bytes_allocated_since_gc_start() const = 0;
46 };
47
48 #endif //SHARE_GC_SHENANDOAH_HEURISTICS_SHENANDOAHSPACEINFO_HPP
|