< prev index next >

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

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

*** 47,61 **** --- 47,76 ---- // 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(); } + + // Shut down the specific GC work. Called by stop() as part of termination protocol. + virtual void stop_service() { ShouldNotReachHere(); } + public: ConcurrentGCThread(); // Tester bool is_ConcurrentGC_thread() const { return true; } + + virtual void run(); + + // shutdown following termination protocol + virtual void stop(); }; // The SurrogateLockerThread is used by concurrent GC threads for // manipulating Java monitors, in particular, currently for // manipulating the pending_list_lock. XXX
< prev index next >