< prev index next >

src/hotspot/share/gc/parallel/parallelScavengeHeap.hpp

Print this page




 241 
 242   // Save the tops of the spaces in all generations
 243   void record_gen_tops_before_GC() PRODUCT_RETURN;
 244 
 245   // Mangle the unused parts of all spaces in the heap
 246   void gen_mangle_unused_area() PRODUCT_RETURN;
 247 
 248   // Call these in sequential code around the processing of strong roots.
 249   class ParStrongRootsScope : public MarkScope {
 250    public:
 251     ParStrongRootsScope();
 252     ~ParStrongRootsScope();
 253   };
 254 
 255   GCMemoryManager* old_gc_manager() const { return _old_manager; }
 256   GCMemoryManager* young_gc_manager() const { return _young_manager; }
 257 
 258   WorkGang& workers() {
 259     return _workers;
 260   }




 261 };
 262 
 263 // Class that can be used to print information about the
 264 // adaptive size policy at intervals specified by
 265 // AdaptiveSizePolicyOutputInterval.  Only print information
 266 // if an adaptive size policy is in use.
 267 class AdaptiveSizePolicyOutput : AllStatic {
 268   static bool enabled() {
 269     return UseParallelGC &&
 270            UseAdaptiveSizePolicy &&
 271            log_is_enabled(Debug, gc, ergo);
 272   }
 273  public:
 274   static void print() {
 275     if (enabled()) {
 276       ParallelScavengeHeap::heap()->size_policy()->print();
 277     }
 278   }
 279 
 280   static void print(AdaptiveSizePolicy* size_policy, uint count) {


 241 
 242   // Save the tops of the spaces in all generations
 243   void record_gen_tops_before_GC() PRODUCT_RETURN;
 244 
 245   // Mangle the unused parts of all spaces in the heap
 246   void gen_mangle_unused_area() PRODUCT_RETURN;
 247 
 248   // Call these in sequential code around the processing of strong roots.
 249   class ParStrongRootsScope : public MarkScope {
 250    public:
 251     ParStrongRootsScope();
 252     ~ParStrongRootsScope();
 253   };
 254 
 255   GCMemoryManager* old_gc_manager() const { return _old_manager; }
 256   GCMemoryManager* young_gc_manager() const { return _young_manager; }
 257 
 258   WorkGang& workers() {
 259     return _workers;
 260   }
 261 
 262   // Runs the given AbstractGangTask with the current active workers, returning the
 263   // total time taken.
 264   virtual Tickspan run_task(AbstractGangTask* task);
 265 };
 266 
 267 // Class that can be used to print information about the
 268 // adaptive size policy at intervals specified by
 269 // AdaptiveSizePolicyOutputInterval.  Only print information
 270 // if an adaptive size policy is in use.
 271 class AdaptiveSizePolicyOutput : AllStatic {
 272   static bool enabled() {
 273     return UseParallelGC &&
 274            UseAdaptiveSizePolicy &&
 275            log_is_enabled(Debug, gc, ergo);
 276   }
 277  public:
 278   static void print() {
 279     if (enabled()) {
 280       ParallelScavengeHeap::heap()->size_policy()->print();
 281     }
 282   }
 283 
 284   static void print(AdaptiveSizePolicy* size_policy, uint count) {
< prev index next >