8000754: NPG: Implement a MemoryPool MXBean for Metaspace

Reviewed-by: jmasa, stefank
This commit is contained in:
Erik Helin 2013-03-22 16:10:01 +01:00
parent 0268771fc4
commit 902be4665b
9 changed files with 177 additions and 7 deletions

View file

@ -56,6 +56,7 @@ public:
enum Name {
Abstract,
CodeCache,
Metaspace,
Copy,
MarkSweepCompact,
ParNew,
@ -88,6 +89,7 @@ public:
// Static factory methods to get a memory manager of a specific type
static MemoryManager* get_code_cache_memory_manager();
static MemoryManager* get_metaspace_memory_manager();
static GCMemoryManager* get_copy_memory_manager();
static GCMemoryManager* get_msc_memory_manager();
static GCMemoryManager* get_parnew_memory_manager();
@ -108,6 +110,14 @@ public:
const char* name() { return "CodeCacheManager"; }
};
class MetaspaceMemoryManager : public MemoryManager {
public:
MetaspaceMemoryManager() : MemoryManager() {}
MemoryManager::Name kind() { return MemoryManager::Metaspace; }
const char *name() { return "MetaspaceManager"; }
};
class GCStatInfo : public ResourceObj {
private:
size_t _index;