summaryrefslogtreecommitdiff
path: root/src/gc/gcpriv.h
diff options
context:
space:
mode:
authorMaoni Stephens <Maoni0@users.noreply.github.com>2018-04-02 11:10:48 -0700
committerGitHub <noreply@github.com>2018-04-02 11:10:48 -0700
commit2583ce936776a0eac31df904e41d5119840c203b (patch)
tree987571beacb459f7e7fa9ad79cb0d0c013068cc1 /src/gc/gcpriv.h
parent73fe1a9b6dd1983e35093139bf50ede2b78bbf14 (diff)
downloadcoreclr-2583ce936776a0eac31df904e41d5119840c203b.tar.gz
coreclr-2583ce936776a0eac31df904e41d5119840c203b.tar.bz2
coreclr-2583ce936776a0eac31df904e41d5119840c203b.zip
Added a new API to provide memory information that GC records. This (#17326)
is to be used by BCL for deciding when to trim memory usage in pooling code
Diffstat (limited to 'src/gc/gcpriv.h')
-rw-r--r--src/gc/gcpriv.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/gc/gcpriv.h b/src/gc/gcpriv.h
index 2c66acef4a..90717420ce 100644
--- a/src/gc/gcpriv.h
+++ b/src/gc/gcpriv.h
@@ -489,7 +489,9 @@ public:
BOOL stress_induced;
#endif // STRESS_HEAP
+ // These are opportunistically set
uint32_t entry_memory_load;
+ uint32_t exit_memory_load;
void init_mechanisms(); //for each GC
void first_init(); // for the life of the EE
@@ -2479,6 +2481,8 @@ protected:
size_t get_total_heap_size ();
PER_HEAP_ISOLATED
size_t get_total_committed_size();
+ PER_HEAP_ISOLATED
+ size_t get_total_fragmentation();
PER_HEAP_ISOLATED
void get_memory_info (uint32_t* memory_load,
@@ -2969,6 +2973,15 @@ public:
#endif //BIT64
PER_HEAP_ISOLATED
+ uint32_t last_gc_memory_load;
+
+ PER_HEAP_ISOLATED
+ size_t last_gc_heap_size;
+
+ PER_HEAP_ISOLATED
+ size_t last_gc_fragmentation;
+
+ PER_HEAP_ISOLATED
uint32_t high_memory_load_th;
PER_HEAP_ISOLATED