< prev index next >

src/share/vm/gc/parallel/gcTaskManager.hpp

Print this page
rev 11508 : 8157240: GC task trace logging is incomprehensible
Reviewed-by: tschatzl


 539   }
 540   void decrement_idle_workers() {
 541     _idle_workers--;
 542   }
 543   // Other methods.
 544   void initialize();
 545 
 546  public:
 547   // Return true if all workers are currently active.
 548   bool all_workers_active() { return workers() == active_workers(); }
 549   uint active_workers() const {
 550     return _active_workers;
 551   }
 552   uint created_workers() const {
 553     return _created_workers;
 554   }
 555   // Create a GC worker and install into GCTaskManager
 556   GCTaskThread* install_worker(uint worker_id);
 557   // Add GC workers as needed.
 558   void add_workers(bool initializing);


 559 };
 560 
 561 //
 562 // Some exemplary GCTasks.
 563 //
 564 
 565 // A noop task that does nothing,
 566 // except take us around the GCTaskThread loop.
 567 class NoopGCTask : public GCTask {
 568 public:
 569   // Factory create and destroy methods.
 570   static NoopGCTask* create_on_c_heap();
 571   static void destroy(NoopGCTask* that);
 572 
 573   virtual char* name() { return (char *)"noop task"; }
 574   // Methods from GCTask.
 575   void do_it(GCTaskManager* manager, uint which) {
 576     // Nothing to do.
 577   }
 578 protected:




 539   }
 540   void decrement_idle_workers() {
 541     _idle_workers--;
 542   }
 543   // Other methods.
 544   void initialize();
 545 
 546  public:
 547   // Return true if all workers are currently active.
 548   bool all_workers_active() { return workers() == active_workers(); }
 549   uint active_workers() const {
 550     return _active_workers;
 551   }
 552   uint created_workers() const {
 553     return _created_workers;
 554   }
 555   // Create a GC worker and install into GCTaskManager
 556   GCTaskThread* install_worker(uint worker_id);
 557   // Add GC workers as needed.
 558   void add_workers(bool initializing);
 559   // Base name (without worker id #) of threads.
 560   const char* group_name();
 561 };
 562 
 563 //
 564 // Some exemplary GCTasks.
 565 //
 566 
 567 // A noop task that does nothing,
 568 // except take us around the GCTaskThread loop.
 569 class NoopGCTask : public GCTask {
 570 public:
 571   // Factory create and destroy methods.
 572   static NoopGCTask* create_on_c_heap();
 573   static void destroy(NoopGCTask* that);
 574 
 575   virtual char* name() { return (char *)"noop task"; }
 576   // Methods from GCTask.
 577   void do_it(GCTaskManager* manager, uint which) {
 578     // Nothing to do.
 579   }
 580 protected:


< prev index next >