src/share/vm/services/memoryService.cpp

changeset 4826
338b3a9e29b5
parent 4761
8b4ce9870fd6
parent 4825
dbd5837b342f
child 4827
42e370795a39
     1.1 --- a/src/share/vm/services/memoryService.cpp	Sat Mar 23 10:06:34 2013 -0700
     1.2 +++ b/src/share/vm/services/memoryService.cpp	Mon Mar 25 11:00:19 2013 +0100
     1.3 @@ -60,9 +60,11 @@
     1.4  GrowableArray<MemoryManager*>* MemoryService::_managers_list =
     1.5    new (ResourceObj::C_HEAP, mtInternal) GrowableArray<MemoryManager*>(init_managers_list_size, true);
     1.6  
     1.7 -GCMemoryManager* MemoryService::_minor_gc_manager = NULL;
     1.8 -GCMemoryManager* MemoryService::_major_gc_manager = NULL;
     1.9 -MemoryPool*      MemoryService::_code_heap_pool   = NULL;
    1.10 +GCMemoryManager* MemoryService::_minor_gc_manager     = NULL;
    1.11 +GCMemoryManager* MemoryService::_major_gc_manager     = NULL;
    1.12 +MemoryPool*      MemoryService::_code_heap_pool       = NULL;
    1.13 +MemoryPool*      MemoryService::_metaspace_pool       = NULL;
    1.14 +MemoryPool*      MemoryService::_class_metaspace_pool = NULL;
    1.15  
    1.16  class GcThreadCountClosure: public ThreadClosure {
    1.17   private:
    1.18 @@ -399,6 +401,19 @@
    1.19    _managers_list->append(mgr);
    1.20  }
    1.21  
    1.22 +void MemoryService::add_metaspace_memory_pools() {
    1.23 +  _metaspace_pool = new MetaspacePool();
    1.24 +  _class_metaspace_pool = new ClassMetaspacePool();
    1.25 +
    1.26 +  MemoryManager* mgr = MemoryManager::get_metaspace_memory_manager();
    1.27 +  mgr->add_pool(_metaspace_pool);
    1.28 +  mgr->add_pool(_class_metaspace_pool);
    1.29 +
    1.30 +  _pools_list->append(_metaspace_pool);
    1.31 +  _pools_list->append(_class_metaspace_pool);
    1.32 +  _managers_list->append(mgr);
    1.33 +}
    1.34 +
    1.35  MemoryManager* MemoryService::get_memory_manager(instanceHandle mh) {
    1.36    for (int i = 0; i < _managers_list->length(); i++) {
    1.37      MemoryManager* mgr = _managers_list->at(i);

mercurial