< prev index next >

src/hotspot/share/gc/shared/taskqueue.hpp

Print this page




 490   void reset_for_reuse();
 491   // Same as above but the number of parallel threads is set to the
 492   // given number.
 493   void reset_for_reuse(uint n_threads);
 494 
 495 #ifdef TRACESPINNING
 496   static uint total_yields() { return _total_yields; }
 497   static uint total_spins() { return _total_spins; }
 498   static uint total_peeks() { return _total_peeks; }
 499   static void print_termination_counts();
 500 #endif
 501 };
 502 
 503 #ifdef _MSC_VER
 504 #pragma warning(push)
 505 // warning C4521: multiple copy constructors specified
 506 #pragma warning(disable:4521)
 507 // warning C4522: multiple assignment operators specified
 508 #pragma warning(disable:4522)
 509 #endif

 510 class TaskTerminator : public StackObj {
 511 private:
 512   ParallelTaskTerminator*  _terminator;
 513 
 514   // Disable following copy constructors and assignment operator
 515   TaskTerminator(TaskTerminator& o) { }
 516   TaskTerminator(const TaskTerminator& o) { }
 517   TaskTerminator& operator=(TaskTerminator& o) { return *this; }
 518 public:
 519   TaskTerminator(uint n_threads, TaskQueueSetSuper* queue_set);
 520   ~TaskTerminator();
 521 
 522   // Move assignment
 523   TaskTerminator& operator=(const TaskTerminator& o);
 524 
 525   ParallelTaskTerminator* terminator() const {
 526     return _terminator;
 527   }
 528 };
 529 #ifdef _MSC_VER




 490   void reset_for_reuse();
 491   // Same as above but the number of parallel threads is set to the
 492   // given number.
 493   void reset_for_reuse(uint n_threads);
 494 
 495 #ifdef TRACESPINNING
 496   static uint total_yields() { return _total_yields; }
 497   static uint total_spins() { return _total_spins; }
 498   static uint total_peeks() { return _total_peeks; }
 499   static void print_termination_counts();
 500 #endif
 501 };
 502 
 503 #ifdef _MSC_VER
 504 #pragma warning(push)
 505 // warning C4521: multiple copy constructors specified
 506 #pragma warning(disable:4521)
 507 // warning C4522: multiple assignment operators specified
 508 #pragma warning(disable:4522)
 509 #endif
 510 
 511 class TaskTerminator : public StackObj {
 512 private:
 513   ParallelTaskTerminator*  _terminator;
 514 
 515   // Disable following copy constructors and assignment operator
 516   TaskTerminator(TaskTerminator& o) { }
 517   TaskTerminator(const TaskTerminator& o) { }
 518   TaskTerminator& operator=(TaskTerminator& o) { return *this; }
 519 public:
 520   TaskTerminator(uint n_threads, TaskQueueSetSuper* queue_set);
 521   ~TaskTerminator();
 522 
 523   // Move assignment
 524   TaskTerminator& operator=(const TaskTerminator& o);
 525 
 526   ParallelTaskTerminator* terminator() const {
 527     return _terminator;
 528   }
 529 };
 530 #ifdef _MSC_VER


< prev index next >