< prev index next >

src/share/vm/gc_interface/collectedHeap.hpp

Print this page




 188     GenCollectedHeap,
 189     ParallelScavengeHeap,
 190     G1CollectedHeap
 191   };
 192 
 193   static inline size_t filler_array_max_size() {
 194     return _filler_array_max_size;
 195   }
 196 
 197   virtual Name kind() const = 0;
 198 
 199   /**
 200    * Returns JNI error code JNI_ENOMEM if memory could not be allocated,
 201    * and JNI_OK on success.
 202    */
 203   virtual jint initialize() = 0;
 204 
 205   // In many heaps, there will be a need to perform some initialization activities
 206   // after the Universe is fully formed, but before general heap allocation is allowed.
 207   // This is the correct place to place such initialization methods.
 208   virtual void post_initialize() = 0;
 209 
 210   // Stop any onging concurrent work and prepare for exit.
 211   virtual void stop() {}
 212 
 213   void initialize_reserved_region(HeapWord *start, HeapWord *end);
 214   MemRegion reserved_region() const { return _reserved; }
 215   address base() const { return (address)reserved_region().start(); }
 216 
 217   virtual size_t capacity() const = 0;
 218   virtual size_t used() const = 0;
 219 
 220   // Return "true" if the part of the heap that allocates Java
 221   // objects has reached the maximal committed limit that it can
 222   // reach, without a garbage collection.
 223   virtual bool is_maximal_no_gc() const = 0;
 224 
 225   // Support for java.lang.Runtime.maxMemory():  return the maximum amount of
 226   // memory that the vm could make available for storing 'normal' java objects.
 227   // This is based on the reserved address space, but should not include space
 228   // that the vm uses internally for bookkeeping or temporary storage




 188     GenCollectedHeap,
 189     ParallelScavengeHeap,
 190     G1CollectedHeap
 191   };
 192 
 193   static inline size_t filler_array_max_size() {
 194     return _filler_array_max_size;
 195   }
 196 
 197   virtual Name kind() const = 0;
 198 
 199   /**
 200    * Returns JNI error code JNI_ENOMEM if memory could not be allocated,
 201    * and JNI_OK on success.
 202    */
 203   virtual jint initialize() = 0;
 204 
 205   // In many heaps, there will be a need to perform some initialization activities
 206   // after the Universe is fully formed, but before general heap allocation is allowed.
 207   // This is the correct place to place such initialization methods.
 208   virtual void post_initialize();
 209 
 210   // Stop any onging concurrent work and prepare for exit.
 211   virtual void stop() {}
 212 
 213   void initialize_reserved_region(HeapWord *start, HeapWord *end);
 214   MemRegion reserved_region() const { return _reserved; }
 215   address base() const { return (address)reserved_region().start(); }
 216 
 217   virtual size_t capacity() const = 0;
 218   virtual size_t used() const = 0;
 219 
 220   // Return "true" if the part of the heap that allocates Java
 221   // objects has reached the maximal committed limit that it can
 222   // reach, without a garbage collection.
 223   virtual bool is_maximal_no_gc() const = 0;
 224 
 225   // Support for java.lang.Runtime.maxMemory():  return the maximum amount of
 226   // memory that the vm could make available for storing 'normal' java objects.
 227   // This is based on the reserved address space, but should not include space
 228   // that the vm uses internally for bookkeeping or temporary storage


< prev index next >