< prev index next >

src/share/vm/gc_interface/collectedHeap.hpp

Print this page




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




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


< prev index next >