< prev index next >

src/share/vm/gc/shared/concurrentGCThread.hpp

Print this page
rev 10297 : [mq]: webrev.01
rev 10298 : [mq]: webrev.02

@@ -33,12 +33,12 @@
 
 protected:
   bool volatile _should_terminate;
   bool _has_terminated;
 
-  // Create and start the thread (setting it's priority high.)
-  void create_and_start();
+  // Create and start the thread (setting it's priority.)
+  void create_and_start(ThreadPriority prio = NearMaxPriority);
 
   // Do initialization steps in the thread: record stack base and size,
   // init thread local storage, set JNI handle block.
   void initialize_in_thread();
 

@@ -47,19 +47,15 @@
 
   // Record that the current thread is terminating, and will do more
   // concurrent work.
   void terminate();
   
-  // Most implementations of ConcurrentGCThread use ConcurrentGCThread's termination protocol,
-  // run(), and stop() methods, and provide specific implementations of run_service() and stop_service.
-  // Otherwise run_service() and stop_service should not be called.)
-  
   // Do the specific GC work. Called by run() after initialization complete.
-  virtual void run_service() { ShouldNotReachHere(); }
+  virtual void run_service() = 0;
   
   // Shut down the specific GC work. Called by stop() as part of termination protocol.
-  virtual void stop_service() { ShouldNotReachHere(); }
+  virtual void stop_service()  = 0;
 
 public:
   ConcurrentGCThread();
 
   // Tester
< prev index next >